O que é o EAI


EAI (do inglês Enterprise Application Integration) é uma referência aos meios computacionais e aos princípios de arquitetura de sistemas utilizados no processo de Integração de Aplicações Corporativas. Os procedimentos e ferramentas de EAI viabilizam a interação entre sistemas corporativos heterogêneos por meio da utilização de serviços.

Objetivo


O objetivo do EAI  poderá ser encontrado na seguinte página do tdn: http://tdn.totvs.com/display/public/integracoes/EAI+-+Enterprise+Application+Integration

 

Tipos de Mensagens


O padrão de mensagem TOTVS estabelece quatro tipos de mensagens: BusinessMessageResponseMessage e ReceiptMessage.

BusinessMessage


BusinessMessage são mensagens que iniciam qualquer processo de troca de mensagens entre os aplicativos. Sempre que um aplicativo enviar ou solicitar informações de outro aplicativo, enviará uma mensagem do tipo BusinessMessage que será processada pelo destinatário.

Existem dois tipos de BusinessMessage:

Pode-se dividir a mensagem de evento em dois tipos:

  1. Upsert: o conteúdo da mensagem de evento é tratado pelo destino como uma inclusão ou modificação.

  2. Delete: o conteúdo da mensagem de evento é tratado pelo destino como uma exclusão. Normalmente a origem envia somente os campos pertencentes à chave primária.

A tabela a seguir apresenta um comparativo entre mensagens de evento e de solicitação:

 

Event

Request

Objetivo

 

Replicação de dados

Centralização de lógica

 

 

Origem

 

Um aplicativo (principal ou master)

 

Vários aplicativos (clientes)

Destino

Vários aplicativos (para repasse de cadastros)

Um aplicativo (detentor da lógica)

 

Tipo de entrega

Async (não necessita de resposta ou resposta imediata).

Sync (envia e aguarda o retorno para continuar o processo).

ResponseMessage


ResponseMessage são mensagens de retorno que possuem um conteúdo definido pelo aplicativo destinatário. Esse conteúdo representa o resultado do processamento feito a partir da mensagem BusinessMessage do aplicativo origem.

Importante ressaltar que esse tipo de mensagem só será acionado a partir de uma mensagem de negócio, ou seja, a origem e o destino da ResponseMessage são o inverso da BusinessMessage.

A mensagem de resposta, junto com seu conteúdo, é adicionada aos registros de histórico e associada à mensagem de negócio (BussinessMessage) de origem, como forma de rastrear todo o processo da troca de mensagem.

ReceiptMessage


ReceiptMessage representa a confirmação de recebimento de uma BusinessMessage pelo aplicativo destino.

Diferente da ResponseMessage, a ReceiptMessage não possui conteúdo descrito ou que possa ser modificado por programas de negócio.

O objetivo da mensagem desse tipo é verificar se o destino recebeu a mensagem, independente de processá-la ou não durante aquele período. É utilizada no tipo de entrega assíncrono.

Posteriormente, quando a mensagem for processada pelo aplicativo destino, uma mensagem de resposta – ResponseMessage – é gerada e encaminhada ao aplicativo que originou a BusinessMessage.