Processos de integração com filas

Wevo.io

No mundo das integrações existem várias soluções de arquiteturas com o intuito de viabilizar a conexão entre dois sistemas. As integrações com filas ou mensagerias podem simplificar bastante o processo de implementação de uma integração, garantindo um bom desempenho, a confiabilidade e a escalabilidade, disponibilizando recursos de comunicação e coordenação aos sistemas distribuídos.

Vantagens da integração utilizando filas
  • Confiabilidade

Com certeza o requisito mais importante de uma integração entre sistemas é que nenhum registro se perca. A integração com filas possibilita a persistência dos dados e o controle de retentativas, aumentando a tolerância a erros ou seja, mesmo caso aconteça uma instabilidade em algumas das pontas da integração, o dado não será perdido

  • Remoção de dependências

O uso de integração com filas removem dependências entre os sistemas conectados. ou seja, caso seja necessário trocar um dos sistemas conectados na integração, não será perdida a arquitetura de conexão entre os demais sistemas. Diferentemente do modelo de integração síncrono (sem filas), onde praticamente toda a lógica da implementação da integração é “jogada fora” em um cenário de troca de um sistema.

  • Volume de transações granular

A integração com filas permite o ajustar precisamente o volume de transações com cada sistema, ou seja, se a quantidade de transações aumentarem ou até mesmo atingirem picos, é possível controlar o fluxo de transações ao sistema destino, mitigando a chance de oneração dos serviços e blindando os sistemas integrados.



Por que a  integração com filas  “blindam” o sistema destino?

Vamos imaginar um cenário de integração de pedidos entre um E-commerce e um ERP, onde, assim que o E-commerce receber um novo pedido, o mesmo deverá ser integrado no ERP. 

Pensando em um cenário assíncrono, para realizar essa construção, é necessário pelo menos dois processos de integração:

Processo de integração #1 – Responsável por receber os novos pedidos no E-commerce e enfileirar os registros em uma fila.

Processo de integração #2 – Responsável por consultar os registros pendentes na fila e  enviar para o ERP.

Essa arquitetura de integração blinda o sistema destino, pois, caso o ERP (sistema de destino) necessite passar por uma janela manutenção que deixará por 2 dias indisponível não será um problema para a integração, pois, independente se o segundo processo de integração está sendo executado ou não, o primeiro processo com o E-commerce continua sendo executado normalmente, gerando assim um “represamento”de registros, até que o segundo processo, que é o consumidor da fila, volte a ser executado.

Considerações Finais

Por todos os benefícios citados, recomendamos que a integração seja construída com a arquitetura assíncrona utilizando filas, para todos cenários onde a integração não necessita de uma resposta ao sistema destino em tempo real de processamento, garantindo assim, a rastreabilidade e confiabilidade dos dados.

Daniel Xavier
Professional Services Manager