16 ポイント 投稿者 xguru 2023-11-29 | まだコメントはありません。 | WhatsAppで共有
  • アプリケーションデータとジョブキューに同じデータベース(Postgres)を使うことを推奨。依存関係を最小化
  • 他のデータベース変更とあわせてトランザクション方式でジョブをキューに入れることで、分散システムにおける一連の問題を回避できる
  • Transactional enqueueing : トランザクションがコミットされるとジョブはキューに入り、ロールバックされると削除され、コミットされるまではジョブが見えないことを保証
  • Postgres の NOTIFY 機能を活用し、ジョブの準備ができ次第ジョブキューがワーカーを起こして処理を開始できるため、ジョブ開始前の平均遅延をミリ秒単位まで短縮可能
  • Postgres のバイナリプロトコルを使用し、データベースとのラウンドトリップを最小化して効率を向上
    • Bulk Job Insert は COPY FROM を使って効率的に実行

まだコメントはありません。

まだコメントはありません。