What Database Race Conditions Taught Me About Distributed Locks
What 3 Database Race Conditions Taught Me About Distributed Locks When you start building backend systems with asynchronous workflows, everyone tell…
Tech news from the best sources
What 3 Database Race Conditions Taught Me About Distributed Locks When you start building backend systems with asynchronous workflows, everyone tell…
📝 Originally published (in Japanese) at forge.workstyle.tech . I'm building an AI avatar stream that runs unattended. No human broadcaster — the ava…
Zaris is a distributed key/value store built for .NET, with its own binary protocol and native .NET clients. With 2.0.0, every Zaris node can also e…
Пару лет назад мы устроили настоящее расследование серии инцидентов в поисках скрытого дефекта нашего Redis-клиента. Команда воспроизводила сбои под…
A few weeks ago I published a write-up on inverting the control flow of a settlement API: instead of the endpoint owning window semantics (batching,…
A rate limiter changes when it leaves memory Rate limiting can start with a Map and a counter. That is enough for a single process. The design chang…
There are already good Redis tools for NestJS. Most of them mainly help you connect NestJS to Redis and use the Redis client. That's useful, but as…
Если мысленно вернуться в 1980-е , аналитика во многом находилась буквально над production Данные появлялись в операционных системах, затем из них с…
Introduction One of the important things to consider for this CI/CD tool is how to execute the different jobs. CI/CD jobs are long running and can t…
Всем привет, меня зовут Михаил, я работаю Java/Kotlin разработчиком в ОТП Банке. Все мы знаем про Redis. Часто используем его для in-memory кэша. В…
You are in a Staff Engineer system design interview. The interviewer draws a simple architecture on the whiteboard: an API, a Redis cache, and a Pos…
When I was building my backend API, I realized a big problem: anyone could spam my endpoints. If a user repeatedly reloads a page or hits an endpoin…
Shopify just did something that would make most engineers do a double-take: they replaced Redis with MySQL for their inventory reservation system, a…
Analogy Imagine you have built a backend API that works perfectly. You deploy it. Users start coming in. At first, everything feels fast. Then the t…
Every senior backend interview I've done in the last 18 months asked at least one Redis question and one Kafka question. Below are the 10 that came…
This is Part 2 of the Directus + Coolify series. If you're new here, start with "Secure Your VPS Before Hackers Do" and the first Directus + Coolify…
Imagine your application makes thousands of queries to the same database. All this traffic generates latency, CPU load, disk load, and increases cos…
Некоторое время назад мне пришла задача спроектировать высокопроизводительный балансировщик нагрузки для протокола Diameter. Через 3 месяца задача и…
Redis is a data structure server that lives in memory. It's fast because reads and writes never touch a disk during normal operation. It's versatile…
Engineering posts often end with: The new design is correct, scalable, and fast. Fast compared with what? When we changed Podium so tied players ran…
"We use Redis Cluster" can mean two very different things: Our dataset is distributed across Redis nodes. Every individual data structure is distrib…
A leaderboard looks like a one-command problem: ZADD weekly 100 alice ZADD weekly 100 bob ZREVRANGE weekly 0 -1 WITHSCORES While building Podium , a…
In my earlier post , I showed that storing a million small values as Redis keys is a waste of memory. It's because every key has its own overhead. T…
Celery + Redis: Background Tasks Made Simple tags: python, celery, redis, tutorial tags: python, celery, redis, tutorial Celery + Redis: Background…
The failure that pushed me into this design was not subtle. I had a blended embedding that kept returning candidate matches that looked reasonable a…
Однажды я решил проверить на практике байку, которую слышал на десятке собеседований: “у нас на проде было такое-то место продано дважды, потому что…
Hello everyone! After publishing my Machine Learning with ML.NET series, I decided to turn the recommendation model into a complete application. In…
Originally published on tamiz.pro . Building real-time systems that can withstand failures, scale under load, and maintain consistent state is a sig…
The Bug That Started It All It began as a small bug I found myself while testing: OTP verification kept failing whenever I refreshed the page, opene…
In Disaster Recovery and Backups , we made peace with the database disappearing entirely: accept it can happen, and make recovery boring and rehears…