We will not focus on Spring Cloud in this chapter; we will do that from Chapter 9, Adding Service Discovery Using Netflix Eureka and Ribbon to Chapter 14, Understanding Distributed Tracing. However, we will bring in one of the modules that's part of Spring Cloud: Spring Cloud Stream. Spring Cloud Stream provides a streaming abstraction over messaging, based on the publish-and-subscribe integration pattern. Spring Cloud Stream currently comes with support for Apache Kafka and RabbitMQ out of the box. A number of separate projects exist that provide integration with other popular messaging systems. See https://github.com/spring-cloud?q=binder for more details.
The core concepts in Spring Cloud Stream are as follows:
- Message: A data structure that's used to describe data sent to and received from a messaging...