9 points par xguru 2026-04-29 | 1 commentaires | Partager sur WhatsApp
  • Installation avec un seul fichier SQL, et fonctionnement (tick) uniquement avec pg_cron
  • File de messages intégrée à Postgres qui réimplémente l’architecture PgQ de l’ère Skype en pur PL/pgSQL, utilisable directement sur un Postgres managé sans extension C ni démon externe
  • Élimine à la source les problèmes chroniques des files SKIP LOCKED — accumulation de dead tuples et charge VACUUM — grâce à un traitement par lots basé sur des snapshots et à une rotation de tables par TRUNCATE, sans dégradation des performances même après plusieurs mois d’exploitation
  • Structure de journal d’événements partagé + curseurs indépendants par consumer, similaire à un topic Kafka, avec prise en charge native du fan-out — plusieurs abonnés peuvent recevoir tous les événements indépendamment, sans duplication des données
  • Latence de livraison de bout en bout de ~1 à 2 secondes avec les paramètres par défaut (intervalle de tick + intervalle de polling), et appels send/receive/ack individuels au niveau de la microseconde
  • Selon des benchmarks préliminaires : insertions PL/pgSQL à ~86k événements/s, lecture côté consumer à ~2,4 M événements/s, et zéro augmentation des dead tuples lors d’un test continu de 30 minutes
  • API SQL avec pgque.send(), pgque.receive(), pgque.ack(), etc. : fonctionne avec tous les drivers Postgres, quel que soit le langage, comme Python, Go ou TypeScript
  • Compatible avec les principaux fournisseurs de Postgres managé : RDS, Aurora, Cloud SQL, AlloyDB, Supabase, Neon, etc., sans build séparé ni validation du fournisseur
  • Séparation des droits intégrée avec 3 rôles (pgque_reader, pgque_writer, pgque_admin), sans besoin de superuser pour l’utilisateur applicatif
  • Si PgQ lui-même a été validé en production pendant plus de 10 ans à l’échelle de centaines de millions d’utilisateurs chez Skype, PgQue reste encore un produit en phase initiale (v0.1)
  • Licence Apache-2.0

1 commentaires

 
kaydash 2026-04-30

Une vraie base de données tout-en-un