Consequências de Alteração de Assinaturas Duráveis
Quando um aplicativo se conecta a uma assinatura durável existente, mas especifica parâmetros que se diferem daqueles usados para criar uma assinatura existente, a assinatura é excluída e, então, recriada com os novos parâmetros. Uma assinatura durável pode ser alterada desta forma apenas quando não possuir consumidores ativos.
No caso básico, existe apenas um consumidor ativo a qualquer momento, portanto, o aplicativo pode alterar a assinatura durável sem afetar os outros assinantes. No entanto, a situação é mais complicada para assinaturas clonadas.
Uma assinatura durável clonada possui vários assinantes
ativos, que geralmente são clones de um aplicativo específico.
- Para aplicativos MDB (Bean Orientado a Mensagens) clonados, os assinantes estão sempre ativos na assinatura e, portanto, o administrador deve parar todas as instâncias do aplicativo MDB antes da alteração da assinatura. (Se as instâncias do aplicativo MDB forem recicladas uma de cada vez, cada instância individual será emitida quando tentar conectar-se utilizando as propriedades alteradas, por causa dos consumidores existentes).
- Para aplicativos EJB clonados, os administradores devem assegurar que todas as instâncias do aplicativo EJB sejam paradas antes da alteração da assinatura, para evitar o problema a seguir. Os beans corporativos possuem assinantes ativos para uma assinatura durável por períodos de tempo relativamente curtos. Se as instâncias de aplicativos EJB forem recicladas individualmente, haverá um período em que diferentes instâncias do aplicativo terão visualizações diferentes da configuração de assinatura. Isso faz com que a assinatura seja excluída e recriada, podendo levar à perda de mensagens. As assinaturas podem ser excluídas e recriadas múltiplas vezes até que a nova definição seja constante em todas as instâncias.
Nota: O arquivo server_name-durableSubscriptions.ser no diretório WAS_HOME/temp é usado pelo serviço do sistema de mensagens para rastrear assinaturas duráveis para beans acionado por mensagens. Se você desinstalar um aplicativo que
contém um bean orientado por mensagens, este arquivo será utilizado para cancelar a assinatura
durável. Se tiver de excluir o diretório WAS_HOME/temp ou outros arquivos nele, certifique-se de preservar esse arquivo.