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…
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…
Published on julin.ai A common way to build an AI agent is to treat it as a long-running process. A worker receives a request, enters an agent loop,…
Modern systems run on data in the form of fast, real-time, continuous streams. But what happens when your system grows faster than your architecture…
In the previous part of this series, we explored named processes. We saw how registering a process under an atom like :worker provided a stable publ…
Writing code is becoming easier. With AI tools, you can generate APIs, database queries, UI components and even complete features much faster than b…
Java Foreign Function and Memory API ( java.lang.foreign ) is a powerful tool that you can use to take advantage of various OS-specific optimization…
Kafka vs RabbitMQ vs NATS (2026): Performance, Use Cases, Latency, Throughput & Microservices Choosing the right messaging system can have a maj…
VRP Is Ready for External Validation — Who Will Be the First to Pilot It? My name is Vitalijus Riabovas. I am the independent architect and creator…
In the previous part of this series, we built a tiny supervisor from scratch. When a worker crashed, the supervisor started a replacement. That repl…
15. Distributed Locking Is Only One Coordination Pattern By this point, we've established an important progression in how distributed systems handle…
I've written before about SMESH, a coordination protocol modelled on mycorrhizal networks — the fungal web that lets trees in a forest warn each oth…
Part 2: Atomic Clocks, The Source of Truth This is Part 2 of a 5-part series on clock synchronization in distributed databases, covering CockroachDB…
In the previous part of this series, we explored process links. A linked worker that crashes sends an exit signal to the process linked to it. By de…
The textbook version of the transactional outbox is tight. You save the domain entity and an outbox row in one local transaction. A background sched…
This is where distributed systems get interesting. If you've worked with backend systems long enough, you've probably written code that looks roughl…
quayside is my idempotency library for Node.js. The whole API fits in one sentence: execute(key, fn) runs a function exactly once per key — if it al…
AI agents become fragile when they are connected as long synchronous chains. An event bus lets them work independently, wait for people and tools, r…
breakwater is my resilience toolkit for Node.js — retry, circuit breaker, timeout, bulkhead, rate limiting, stale-while-open caching, all composable…
The formal problem: CWE-367 Time-of-check to time-of-use (TOCTOU) is a formally catalogued class of race condition, CWE-367 , first documented in 20…
📦 Project: https://github.com/VampiricCyborg/sluice 1. The Problem: When Capacity Becomes the Bottleneck A self-hosted vLLM deployment runs on a GPU…
TL;DR — I've been building the Social Resource Floor: an open blueprint for coordinating one person's access to basic survival resources — food, hou…
When learning system design, we are almost always fed the exact same doctrine: start with one API + one Database, then as traffic increases, add a L…
Support on GitHub: github.com/phero20/concurrent-resource-scheduler (Give it a star if you find it useful!) View Docs: pkg.go.dev/github.com/phero20…
Distributed Trust and Multimodal Perception for Next-Generation Autonomous Drone Defense A Blockchain-Coordinated Multi-Node Architecture for Truste…
Inside Facebook's News Feed Architecture Chapter 1: The Scale & SLA Challenge "Every single day, more than three billion people around th…
A team runs 500 prompts against a new model endpoint, records p99 latency of 8.4s, and files a regression ticket against the model. Nobody checks th…
An LLM request is two workloads in a trench coat — a heavy, bursty prefill and a stream of tiny latency-sensitive decodes. Running them on the same…
Deterministic simulation testing drives every fault, clock, and random choice from one seed — so a flaky, once-in-production agent bug becomes a rep…
Introduction Imagine sending 100 from Alice to Bob. If both accounts are in one database, this is easy: start a transaction, update both balances, a…