What advantages does Spring AMQP have over Spring Cloud Stream for Microservices architecture

I am using Spring Cloud approach to create multiple microservices that need to communicate with each other. For messaging between microservices, I intended to use RabbitMQ and Spring AMQP, but after looking at Spring Cloud Stream, I feel lost. In my mind, Spring Cloud Stream is the next level of abstraction (maybe a little too strong, but you should get an overall impression) with many very useful features. So I'm wondering why would anyone use Spring AMQP for new development? Could you provide any advantages of Spring AMQP over Spring cloud flow for the rather simple case where one microservice sends a message to another microservice and receives a response?

Thank.

+3


source to share


1 answer


Spring Cloud Stream provides a self-righteous configuration model that connects to an external system (Binder, Consumer Group, etc.). This is mainly for applications Streaming

where applications are piped. Applications that do not conform to this model can be configured directly from Spring Integration (+ Spring AMQP).



For example, Spring Cloud Stream does not provide direct scripting support request/reply

, eg. You can read this SO question and github issue here

+5


source







All Articles