このガイドでは、Webhook を使用するためのベストプラクティスについて説明します。
レスポンス
HTTPSエンドポイントがWebhook を受信したら、5秒以内
に200
でレスポンスを返すことが必要です。
5秒以上レスポンスが無い場合、200以外のステータスコードの場合はprotegerはWebhookの配信に失敗したとみなします。
一般的なパターンは、バックグラウンドワーカーによる非同期処理のためにメッセージキューにペイロードを格納することです。これにより、リクエストがタイムアウトして Webhookの配信が失敗とみなされる可能性を減らすことができます。
失敗の検知
Webhookの受信を監視し、失敗したWebhook 配信が影響を及ぼす前にに修正する事が必要です。
遅延の管理
まれに、Webhookの受信に遅延が発生する可能性があります。
しかし、Webhookは常に指定されたリソースの最新のデータで送信されます。配信される Webhook のペイロードには、Webhook のトリガーから最終的な配信までの間にリソースの最新の属性が反映されます。
リコンシリエーションジョブ
protegerのWebhookからのデータ受信だけに依存してはいけません。Webhookの配信は常に保証されているわけではないので、protegerから定期的にデータを取得するためのリコンシリエーションジョブの実装を検討する必要があります。
拡張性・信頼性の高いシステムの構築
protegerからリソースの変更をWebhookでトラフィックを追跡することは、膨大な量になることがあります。
また、イベントが同時に多数発生する事が予想されるトピックもある為、それらの配信を受信できる様に実装する事が必要です。