Postgres вместо Redis, Kafka и Elasticsearch: где предел

English-language YouTube has been churning out videos all year long, "I replaced the entire stack with Postgres," and they're racking up millions of views. But they're all about HOW to ditch Redis, Kafka, and Mongo, and almost no one talks about WHEN you shouldn't do this. And that's a shame: Recall.ai got into such trouble in production that 500 processes were stuck on locks, and the service crashed. Today, we'll examine what "Postgres can do everything" actually works, what's a myth, and what should be considered in production. Not "how to replace everything with Postgres," but when it's worthwhile, when it's not, and at what cost. 📌 Get your free checklist "When Postgres is enough, and when Redis/Kafka is needed": https://clck.ru/3UQope 👉 "Microservices in Go 3.0" course - 8 weeks of dense coding, 5 services, gRPC + HTTP, Kafka, Redis, Postgres, and Observability (traces, metrics, logs). It shows exactly where Postgres stops and Kafka and Redis come into their own: https://clck.ru/3UQp25 ⏱️ TIMESTAMPS: 0:00 - Intro: Everyone on YouTube is screaming "Postgres will replace the entire stack" 1:06 - How I switched to JSONB instead of Mongo and didn't regret it 3:17 - Postgres instead of Redis 6:09 - The main catch: what about multi-node, replicas, and eventual consistency? 9:00 - Go's pitfalls: LISTEN bypasses pool, reconnect, pgbouncer 10:56 - Redis 50 times faster? 11:35 - Postgres instead of Kafka: a queue on a single table 12:20 - How 100 workers don't fight for tasks 14:55 - A worker crashed, but the task wasn't lost 17:03 - Backpressure: Don't kill Postgres with unnecessary polling 21:24 - LISTEN/NOTIFY: Where this convenient pub/sub breaks 22:22 - How Recall.ai crashed Prod: 500 processes on a single NOTIFY 23:50 - Global lock on the entire database 28:40 - JSONB instead of MongoDB: ACID + flexible schema 32:50 - FTS instead of Elasticsearch: 200x faster search with a single index 35:52 - pgvector instead of Pinecone: vectors and RAG without a separate database 40:49 - Advisory locks instead of Redis locks 46:00 - PostgREST: REST API directly from the database 46:35 - pg_cron: a scheduler without a separate service 48:46 - Solution framework: 4 questions before choosing a stack 💬 Telegram channel - posts about Go, production, and architecture: https://t.me/olezhek28go 💬 Have you already ditched your stack in favor of Postgres? Or, conversely, have you gotten burned by it in production? #postgresql #golang #backend