Kafka hızlıdır - ama ben Postgres kullanacağım
(topicpartition.io)Ana tez
Teknoloji sektörü iki kampa ayrılıyor:
- Kamp 1: Moda terimlerin peşinden gidip karmaşık ve modern teknoloji yığınlarını düşünmeden benimsemek
- Kamp 2: Sağduyulu ve pratik bir yaklaşımla yalnızca gerektiği kadarını kullanmak
Yazar, çoğu durumda Kafka yerine Postgres'in pub/sub ve kuyruk sistemi olarak kullanılabileceğini savunuyor.
Benchmark sonuçları
Pub/Sub performansı
- 4 vCPU tek düğüm: saniyede 5.036 mesaj yazma, 25.183 okuma (5x fan-out)
- 4 vCPU 3 düğümlü replikasyon: benzer throughput korunuyor, latency biraz artıyor
- 96 vCPU tek düğüm: saniyede 243.000 mesaj, 1.16 GiB/s okuma hızı
Kuyruk (Queue) performansı
- 4 vCPU tek düğüm: saniyede 2.885 mesaj
- 96 vCPU tek düğüm: saniyede 20.144 mesaj
Başlıca noktalar
- Donanımdaki ilerleme: Modern donanımla (192 çekirdek CPU, 4 TB RAM) tek düğüm sistemler çok güçlü hale geldi
- Postgres rönesansı: "Her şey için Postgres kullanalım" hareketi büyüyor
- Pratiklik: OpenAI gibi dev startup'lar bile hâlâ tek bir Postgres instance'ı kullanıyor
- Kurumsal ek yük: Yeni bir teknolojiyi devreye almak; öğrenme, işletim ve izleme gibi maliyetler doğurur
Sonuç
"Postgres bozulana kadar sadece Postgres kullanalım"
Çoğu şirketin ihtiyacı saniyede yalnızca birkaç MB seviyesinde throughput'tur ve bunu Postgres rahatlıkla karşılayabilir. Verilmek istenen mesaj, karmaşık dağıtık sistemlerin ancak gerçekten gerektiğinde devreye alınması yönündedir.
8 yorum
Kafka yavaş ama...
Bubblie'nin her durumda iyi olup olmadığından emin değilim ama Kafka kullanmak zorunda olunmadığı hâlde Kafka kullanıldığı için ek iş yükü çıkan çok vaka gördüğümü düşünüyorum.
Yine bir
postgresqlövgü yazısı...Önemli olan, ihtiyacın olduğu kadarını kullanmak
ve esnek şekilde geçiş yapabilen bir tasarım.
Bunu görünce aklıma Postgresql için en uç tavsiye yazısı geldi
Oo, başlığı nasıl isteğinize göre değiştirdiniz?
Başlık mı?
Aslında öyle büyük bir numara yapmadım.
https://news.hada.io/guidelines
> Markdown desteği
> Hem gövde hem de yorumlarda desteklenir.
> Temel olarak CommonMark kurallarını takip eder.
> Görseller desteklenmez.
Ek olarak, bağlantı GeekNews URL’siyse bağlantı başlığının önünde bir simgenin gösterildiği anlaşılıyor
SQLite bozulana kadar sadece SQLite kullanacağım.