Enviando Pedidos em Batch Utilizando o Configuration Manager Proxy

Isto faz parte da maior tarefa de desenvolver aplicativos do Configuration Manager Proxy (CMP) e é um dos recursos aprimorados do CMP.

A utilização do CMP é possível para agrupar vários pedidos destinados ao mesmo Configuration Manager e enviá-los como uma única unidade de trabalho.

Para iniciar um batch, o aplicativo deve chamar o método beginUpdates() na manipulação do ConfigManagerProxy. Isto instrui o CMP a suspender o envio de pedidos de alteração de estado para o Configuration Manager até que seja instruído a fazer de outra forma. O método sendUpdates() chama o CMP para enviar como um batch os pedidos recebidos desde a última chamada beginUpdates() e clearUpdates() pode ser utilizado para descartar um batch sem enviá-lo para o Configuration Manager. É possível determinar se um batch está em andamento utilizando o método isBatching(). Observe que pode haver apenas um batch em andamento para cada manipulação de CMP.

Uma vantagem de utilizar um método de batch é que ele garante que nenhum outro aplicativo pode ter mensagens processadas pelo Configuration Manager durante o batch. Quando um Configuration Manager recebe um batch de pedidos, ele processa cada pedido no batch na ordem que foi incluído no batch (PEPS) e não são processados pedidos de nenhum outro aplicativo CMP até que todo o batch seja concluído.

Para ilustrar isso, considere a seguinte seqüência de comandos:
BrokerProxy b2 = topology.createBroker("B2", "QMB2");
ExecutionGroupProxy e = b2.createExecutionGroup("default");
b2.deploy();

Sem utilizar um método de batch, não é possível garantir o êxito destas ações. Por exemplo, mesmo que cada comando fosse, de outra maneira, bem-sucedido, é possível que um segundo aplicativo (provavelmente remoto) exclua o intermediário B2 após ele ter sido criado pelo primeiro aplicativo, mas antes dos outros dois comandos serem processados.

Se a seqüência for estendida para utilizar um método de batch, o Configuration Manager garantirá o processamento de todos os comandos juntos, indicando que nenhum outro aplicativo poderá prejudicar a lógica pretendida pelo aplicativo.
cmp.startUpdates();
BrokerProxy b2 = topology.createBroker("B2", "QMB2");
ExecutionGroupProxy e = b2.createExecutionGroup("default");
b2.deploy();
cmp.sendUpdates();

Outra vantagem de utilizar um método de batch é o desempenho. O CMP geralmente envia uma mensagem do WebSphere MQ para o Configuration Manager para cada pedido. Em uma situação que requer o envio de muitos pedidos em sucessão rápida - a criação de uma hierarquia de tópicos, por exemplo, um método de batch tem um impacto significativo no desempenho em relação ao tempo gasto para processar os pedidos e memória. Cada batch de pedidos é enviado em uma única mensagem do WebSphere MQ e, portanto, a sobrecarga para cada método é drasticamente reduzida.

O modo de batch não fornece recurso transacional (confirmação e backout); é possível que alguns pedidos em um batch sejam bem-sucedidos e outros falhem. Se o Configuration Manager processar um pedido em um batch que falha, ele continuará processando o próximo pedido no batch independentemente disso.

Tarefas relacionadas
Configurando um Ambiente para Desenvolvimento e Execução de Aplicativos do Configuration Manager Proxy
Recursos Avançados do Configuration Manager Proxy
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ae33130_