Testing purposes post
June 20, 2026
Buffering is used to temporarily store data while it is being moved from one place to another.
- technology
- testing
I'm Johnny, a software architect focused on scalable distributed systems, clean architecture, and AI-driven engineering. I write about the systems I build and what I learned along the way.
June 20, 2026
Buffering is used to temporarily store data while it is being moved from one place to another.
September 5, 2022
How we built an idempotent, zero-intervention email service that handles millions of requests per hour - state-machine processing, auto-retrying HTTP clients, in-memory backoff, and Kafka retry/DLQ patterns for resilience.
October 15, 2020
Inserting to the database succeeds but publishing the event fails — and now two systems disagree. A look at distributed transactions, logical transactions, and why the outbox pattern is the right way to avoid dual-write inconsistency.
September 20, 2020
Sooner or later a database, web server, or third-party service becomes a bottleneck. Request aggregation through buffering can prevent or minimize the overload — and here's a tiny, simple-to-use Java library to do it.