Em algum momento as aplicações para atender uma funcionalidade de negócio precisam se comunicar.
Para realizar esta integração existem múltiplas abordagens que podem ser resumidas em quatro estilos de integração.
Integração baseadas em "Arquivo"
Uma aplicação atua como "Publicador de Arquivos" criando ou atualizando arquivos em uma determinada pasta.
Outras aplicações observam a pasta para processar este arquivo.
Integração com "Banco de Dados Compartilhado"
Uma aplicação atua como "Publicador das Tarefas" adicionando um item a uma tabela de 'tarefas' em um banco de dados compartilhado.
Outra aplicação atua como "Consumidor" observando a tabela de 'Tarefas' aguardando itens novos ou não processados.
Processando estes itens e gravando o resultado do processamento na mesma tabela ou uma tabela diferente.
Integração com "Conexão Direta"
Neste padrão o "Publicador" e o "Consumidor" podem se alternar no qual ambos pontos da extremidade podem enviar mensagens para o outro de forma independente.
O tipo de conexão pode ser por exemplo: "TCP/IP" ou "Named Pipes". E a mensagem enviada pode alternar em diversos formatos (Binary, XML, Json e outros).
Após estabelecer conexão são enviadas mensagens entre as aplicações ou serviços.
Integração com "Mensagens assíncronas usando Message Broker"
Aplicações atuam como "Publicador de Mensagens" adicionando mensagens em qualquer formato em uma Aplicação intermediária chamada "Message Brokers ou Message Buses".
A aplicação de "Message Brokers" recebe as mensagens de uma origem e encaminha para um "Alvo" ou "Aplicação consumidora".
Este padrão apresenta algumas vantagens:
- Desacoplar 'Publicador' e 'Consumidor'.
- Fornecer um modo confiável para processar tarefas assincronamente e se comunicar.
- Fornece um modo de implementar uma arquitetura de escalabilidade horizontal.
- Fornece um modo eficiente de extração de dados armazenados (Data Store Polling).
Referências
Introduction to Integration Styles
Top comments (0)