PgQue: VACUUMプレッシャーゼロのPostgresキュー

https://github.com/NikolayS/pgque

記事

  • PgQue は SKIP LOCKED の代わりに TRUNCATE セマンティクスを使用し、Postgres の VACUUM 負荷を回避します
  • ワーカーは追記専用ログ上にカーソルを保持するため、ワーカーの障害時もデータ損失ではなくテーブルの肥大化が起きます
  • 従来のジョブキューではなく、Kafkaライクなログとして位置づけられています

ディスカッション

  • コメント欄では、ack や共有ワーカープールなど真のキューセマンティクスが欠けており、Kafka や SNS(AWS のメッセージングサービス)に近いという指摘が多い
  • SKIP LOCKED + ポーリングは実際の本番環境でスケール時に深刻な DB パフォーマンス問題を引き起こすと報告されています
  • Kafka や RabbitMQ の運用コストを避けたいチームにとって、Postgres ネイティブなアプローチは魅力的との声も

HN(Hacker News)でディスカッションを見る


原文(英語): PgQue: Zero-Bloat Postgres Queue


Type Link
Added Apr 20, 2026
Modified Apr 20, 2026