Temporal for Java/Spring Boot Microservices
A typical approach to implementing microservices in Java with Spring Boot places business logic within a REST controller. If the microservice makes downstream requests - which for better or worse are often implemented in a request/response style - the implementation must include code that compensates for sporadic failures. Of course, this is exactly in Temporal's sweet spot.
This project experiments with applying Temporal to the implementation of Java/Spring Boot microservices, addressing things such as retries, as well as dependency management/injection, and packaging of deployable artifacts. The project's git repository is accompanied by the following blog posts:
- Applying Temporal to Request/Response Microservices
- Spring Boot and Temporal
- An addendum that shows how to make Temporal activities Spring Beans; this allows for things like dependency injection.
Application Topology Diagram