Implementing Outbox Transactions in Microservices Architecture

When working on the Runs project, one design demand was to avoid two-phase commits between different microservices. In earlier posts, I wrote about various apps and how event-driven architecture helps with solution-driving. One developmental task involved a particularly complex scenario. I am writing this post to share my experience of overcoming it with you. Issue: … Continue reading Implementing Outbox Transactions in Microservices Architecture

Virtual and Process threads with Spring Boot

Spring Boot 3.2 introduced Virtual thread support along with Java 21. Virtual threads in JAVA introduced the application level concurrency in a different paradigm. Imagine a boot application fielding around 50K blocking requests and not getting an out-of-memory error. In the current world, when thinking about threads in Java/Boot programming, we are limited to the … Continue reading Virtual and Process threads with Spring Boot