Skip to content

artembilan/microservices-patterns-spring-integration

Repository files navigation

Microservices Patterns with Spring Integration

This project serves as a reference implementation of various Microservices Patterns described on Microservice Architecture with Spring Integration Framework and Spring Boot. Since Spring Integration is fully based on messaging, which can be distributed, we also include some Event Streaming Patterns implementations together with Spring Cloud Stream Framework.

Every single module of this project is fully independent and ready to use Spring Boot application for particular pattern: they are just generated via start.spring.io. However, the $springBootVersion variable might be changes since it is pulled from the gradle.properties of the root project.

You can run ./gradlew test (or build) for the whole project or just chose specific module to run. The tests in modules verify the pattern in action and its implementation with Spring Integration.

See specific module for more details of the pattern (or recipe) it implements and how:

  • circuit-breaker - circuit breaker pattern implementation

  • distributed-tracing - distributed tracing pattern implementation

  • Framer - multi-window distribution

  • mRPC - request-reply via Spring Cloud Stream and RPI pattern

  • Normalizer - an EIP Normalizer implementation

  • Outbox - transactional outbox pattern implementation

About

Spring Integration implementations for well-known Microservices Patterns

Topics

Resources

License

Stars

Watchers

Forks

Languages