Diretrizes: Projetando Beans Orientados a Mensagens
Tópicos
Introdução
Essa diretriz focaliza o design de beans orientados a
mensagens. Orientação adicional sobre os beans orientados a mensagens, tal como identificá-los
e modelá-los, é fornecida por Diretrizes:
Beans Orientados a Mensagens. Orientação geral sobre EJBs é fornecida por Diretrizes:
EJBs (Enterprise JavaBeans).
Observe que como os beans orientados a mensagens são chamados indiretamente por meio de mensagens, em vez
de diretamente por meio de operações de interface, seu design requer a elaboração de formato de
mensagens e a descrição de comportamento em resposta a mensagens e não a elaboração de
operações de interface.
Uma limitação na utilização do sistema de mensagens é que o produtor de uma mensagem e o
consumidor (o bean orientado a mensagens) não podem participar da mesma transação.
O produtor pode utilizar uma transação para colocar a mensagem na fila e o
bean orientado a mensagens pode utilizar uma transação separada para consolidar os resultados de
consumo da mensagem, mas essas sempre deverão ser transações separadas.
Os beans orientados a mensagens podem utilizar as transações
gerenciadas por bean ou gerenciadas por contêiner. As transações gerenciadas por contêiner
são geralmente mais simples e, portanto, são a abordagem preferida. Consulte Diretrizes:
Projetando EJBs (Enterprise JavaBeans) para obter orientação adicional.
Cada bean orientado a mensagens é uma classe ativa que pode ter várias instâncias.
Como cada instância de bean orientado a mensagens é executada coincidentemente, o processamento de
uma mensagem recebida por uma instância pode ser concluído antes ou depois de uma mensagem processada
por outra instância.
Isso significa que as mensagens podem ser consumidas em uma ordem diferente da qual
foram produzidas. O design de beans orientados a mensagens deve considerar essa
possibilidade.
|