8 puan yazan xguru 1 일 전 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Tek bir SQL dosyasıyla kuruluyor ve yalnızca pg_cron ile çalışıyor (tick)
  • Skype döneminin PgQ mimarisini saf PL/pgSQL ile yeniden uygulayan, Postgres içine gömülü mesaj kuyruğu; C eklentileri veya harici daemon'lar olmadan managed Postgres üzerinde doğrudan kullanılabiliyor
  • Geleneksel SKIP LOCKED kuyruklarının kronik sorunu olan dead tuple birikimi ve VACUUM yükünü, snapshot tabanlı batch + TRUNCATE tablo rotasyonu ile kökten ortadan kaldırarak aylarca çalışsa da performans düşüşü yaşamıyor
  • Kafka topic'lerine benzer paylaşımlı olay günlüğü + tüketici başına bağımsız cursor yapısıyla yerel fan-out desteği sunuyor — veri kopyalamadan birden fazla abone tüm olayları bağımsız biçimde alabiliyor
  • Uçtan uca teslim gecikmesi varsayılan ayarlarda ~1-2 saniye (tick aralığı + poll aralığı), tekil send/receive/ack çağrıları ise mikrosaniye düzeyinde
  • Ön benchmark'a göre PL/pgSQL insert ~86k ev/s, tüketici okuma ~2.4M ev/s; 30 dakikalık sürekli testte dead tuple artışı sıfır
  • pgque.send(), pgque.receive(), pgque.ack() gibi SQL API tabanlı olduğu için Python, Go, TypeScript gibi dillerden bağımsız olarak tüm Postgres sürücülerinde çalışıyor
  • RDS, Aurora, Cloud SQL, AlloyDB, Supabase, Neon gibi başlıca managed Postgres sağlayıcılarının tamamıyla uyumlu; ayrı build veya sağlayıcı onayı gerekmiyor
  • 3 rol (pgque_reader, pgque_writer, pgque_admin) tabanlı yetki ayrımı yerleşik geliyor; uygulama kullanıcısı için superuser gerekmiyor
  • PgQ'nun kendisi Skype'ın yüz milyonlarca kullanıcı ölçeğinde 10 yıldan uzun süre prodüksiyonda doğrulanmış olsa da, PgQue ürün olarak henüz erken aşamada (v0.1)
  • Apache-2.0 lisansı

Henüz yorum yok.

Henüz yorum yok.