このガイドでは、Webhook を使用するためのベストプラクティスについて説明します。


レスポンス

HTTPSエンドポイントがWebhook を受信したら、5秒以内200でレスポンスを返すことが必要です。

5秒以上レスポンスが無い場合、200以外のステータスコードの場合はprotegerはWebhookの配信に失敗したとみなします。

一般的なパターンは、バックグラウンドワーカーによる非同期処理のためにメッセージキューにペイロードを格納することです。これにより、リクエストがタイムアウトして Webhookの配信が失敗とみなされる可能性を減らすことができます。


失敗の検知

Webhookの受信を監視し、失敗したWebhook 配信が影響を及ぼす前にに修正する事が必要です。


遅延の管理

まれに、Webhookの受信に遅延が発生する可能性があります。

しかし、Webhookは常に指定されたリソースの最新のデータで送信されます。配信される Webhook のペイロードには、Webhook のトリガーから最終的な配信までの間にリソースの最新の属性が反映されます。


リコンシリエーションジョブ

protegerのWebhookからのデータ受信だけに依存してはいけません。Webhookの配信は常に保証されているわけではないので、protegerから定期的にデータを取得するためのリコンシリエーションジョブの実装を検討する必要があります。


拡張性・信頼性の高いシステムの構築

protegerからリソースの変更をWebhookでトラフィックを追跡することは、膨大な量になることがあります。

また、イベントが同時に多数発生する事が予想されるトピックもある為、それらの配信を受信できる様に実装する事が必要です。