Apache, Nginx, PHP, MySQL, Redis, Beanstalkd and a mail catcher, on a laptop. Onboarding measured in minutes rather than days, and what it costs to run.
Reading a stream directly gives every consumer every message. A consumer group distributes entries between members and remembers which ones were handed out and not acknowledged. The pending…
Caching the rows a query returned saves the database round trip and leaves the hydration, the mapping and the aggregation to happen on every request anyway. Profiling usually…
An expensive cached value expires under load and every concurrent request misses simultaneously, so forty requests all run the same four-second query at once and the database falls…
A list used as a queue loses the message when a consumer crashes mid-work, because BRPOP removes it and there is no record that anything was in flight.…
4.0 added a C module API, and the ecosystem that follows — search, JSON, time series, filters — is genuinely capable. It also means running a Redis that…