Páginas filhas
  • DEAITOOLS-200 - Avaliar impacto de mudar para a versão 1.0 do AMQP

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Mais uma vez, não é uma refatoração complexa.
Só é preciso definir se ela precisa existir em conjunto com o AMQP 0.9 através de abstração (O que aumentaria a complexidade), ou se pode ser substituída.

Datasul

No Datasul a refatoração seria realizada no projeto totvseai-mb para a utilização do AMQP 1.0. Hoje a Pivotal (responsável pelo RabbitMQ) não possui um cliente específico para o AMQP 1.0. No próprio Github "https://github.com/rabbitmq/rabbitmq-amqp1.0" eles citam outros clientes Java para o uso do AMQP 1.0.

Foram analisados outras implementações para o Datasul, o TJF (Totvs Java Framework) e o Spring Cloud Stream. O TJF utiliza o Spring Cloud Stream para uso de mensageiria, porém este componente até onde foi analisado, não deixa claro o suporte ao estilo de mensagens "Request Response". Existe a possibilidade de trabalhar com estilo "Request Response" porém teria que mudar o Datasul para utilizar um Message Broker compatível com AMQP 1.0 e que também suporte o estilo "Request Response".

O Message Broker que possui essas características é o ActiveMQ. No link a seguir há uma implementação que atende este padrão de mensagem https://michaelrice.com/2015/05/the-simplest-jms-requestreply-i-could-come-up-with-for-activemqjboss-a-mq/

Se for utilizar o RabbitMQ  no Datasul a sugestão é realizar um estudo mais aprofundado para o uso do estilo "Request Response".