Spring Integration

Spring Integration helps integrate microservices seamlessly over a message broker. It allows programmers to focus on business logic and give control of the technical infrastructure (what message format to use? How to connect to message broker?) to the framework. Spring Integration provide a variety of configuration options through well-defined interfaces and message adapters. Spring Integration website (https://projects.spring.io/spring-integration/):


Extends the Spring programming model to support the well-known Enterprise Integration Patterns. Spring Integration enables lightweight messaging within Spring-based applications and supports integration with external systems via declarative adapters. Those adapters provide a higher-level of abstraction over Spring's support for remoting, messaging, and scheduling. Spring Integration's primary goal is to provide a simple model for building enterprise integration solutions while maintaining the separation of concerns that is essential for producing maintainable, testable code.

Features provided by Spring Integration include the following:

  • Simple implementations for enterprise integration patterns
  • Aggregation of responses from multiple services
  • Filtering results from the service
  • Service message transformation
  • Multiple protocol support--HTTP, FTP/SFTP, TCP/UDP, JMS
  • Support for different styles of Webservices (SOAP and REST)
  • Support for multiple message brokers, for example, RabbitMQ

In the previous chapter, we used Spring Cloud to make our microservices Cloud-Native--to be deployed in the Cloud and utilize all the benefits of Cloud deployment.

However, applications built with Spring Integration, especially those that interact with message brokers, need a lot of configuration to be deployed into the Cloud. This prevents them from taking advantage of the typical benefits of the Cloud, such as automatic scaling.

We would want to extend the features provided by Spring Integration and make them available on the Cloud. We would want new instances of our microservice cloud instances to be able to automatically integrate with message brokers. We would want to be able to scale our microservice cloud instances automatically without manual configuration. That's where Spring Cloud Stream and Spring Cloud Data Flow come in.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset