Reactive processing enables developers to build non-blocking, asynchronous systems that can utilize the resources of modern processors much more efficiently. This keeps reactive systems responsive and resilient, making them ideal to process high-throughput and low-latency workloads.
In this hands-on workshop session, we will briefly introduce the basic characteristics and advantages of reactive systems. Together, we will decompose a failure-prone monolith into individual reactive microservices while exploring the relevant key concepts of reactive programming. By the end of the session, you will know some strategies to split monoliths into microservices. Additionally, you know key advantages of reactive programming and have applied them to a simple codebase for future reference.
To participate in the hands-on sessions, you will need the following software:
- JAVA JDK 11, e.g. OpenJDK from https://jdk.java.net/archive/
- Any JAVA IDE you are comfortable with, be it IntelliJ, Eclipse or even VS Code with JAVA-LSP
- git client to clone this repository
- ali http load tool https://github.com/nakabonne/ali (you will find there installation instructions for Linux and Mac or you can directly download the binaries for your OS, even for Windows, from the release page)
Thank you very much for installing any missing software prior to the workshop.