Four servers, eleven log files, and an incident reconstructed from three of them. Shipping first and parsing second, structured events, and the correlation id that makes it useful.
Setting a five-second timeout on a slow dependency feels like protection and is not: with twelve PHP-FPM workers and a dependency taking five seconds, twelve concurrent requests occupy…
The synchronous call between two services was the reason both were down. Publishing an event decouples their availability — and makes eventual consistency a business decision.
A service extracted for organisational reasons but reading and writing another service’s tables has all the costs of a network hop and none of the independence. It cannot…
A 400ms pause on every request, once an hour, caused by a cache cleanup nobody thought of as expensive. Redis is single-threaded, and freeing memory is work.
Reads moved to a replica and checkout started showing empty carts. Read-after-write, sticky connections, and measuring the lag rather than assuming it.
The name comes from ship compartments: a breach floods one section rather than the hull. Applied to a request path, it means each dependency gets a share of…
Choreography has each service react to events and know nothing about the whole; orchestration has one component call the others in order. The first is presented as the…