Webhook ゲートウェイは、Webhook サプライヤーと Webhook ショッパーの間に位置する Webhook 管理ツールです。 Webhook のリバース プロキシとフォワード プロキシの両方として機能します。 Webhook を送信する API サプライヤーと Webhook を受信する利用者の両方によって展開され、Webhook イベントの多重化と逆多重化にそれぞれ対処します.
このテキストは、 Convoy によって提供される環境に重点を置いて、主に webhook ゲートウェイの最も一般的な使用例を示します。 Convoy は、プラットフォーム チームがデプロイして、Webhook をほぼ完全に管理できる、非常にパフォーマンスの高いオープン提供 Webhook ゲートウェイです。 Noble Webhook オファー マイクロサービスでのルーティング
- はかり
- 監視と指標
- かんたんデバッグ
Geolocation-Essentially ベースの完全ルーティング
バージョン管理 ) Noble Webhook オファー
単純な HTTP プッシュである Webhook は、ネットワーク リクエストの急増、不安定な Web、期限切れの SSL 証明書など、具体化されているが、ダウンタイムがほとんどないという原因の結果として、まったく失敗します.
Webhook ゲートウェイは、
- 再試行: Webhook イベントを指定された数のインスタンスを定期的に再送信します。
料金の制限: 顧客がパスできる価格でイベントを提供することで、クライアント エンドポイントの過負荷を未然に防ぎます。 タイムアウト;
Convoy の Webhook ゲートウェイの喜びは、これらを強制することで、Webhook イベントの配信可能性を明らかにするために存在します。アプリケーションの余暇は他の業界のロジックを処理します。
マイクロサービス アーキテクチャでは、さまざまなプロバイダーが Webhook イベントを送信し、サードパーティ プロバイダーからイベントを受け取る可能性があります。 これらのイングレスおよびエグレス Webhook Web ページ トラフィックにどのように対処しますか? Webhook ゲートウェイは、受信 Webhook をプロバイダーにルーティングして消費するようにデプロイおよび構成できます。同じ式で、プロバイダーから Webhook イベントを受信し、クライアント エンドポイントに転送する可能性があります。 この一連の流れを下の画像に示します。
オファー: マイクロサービスを運用するために Webhook ゲートウェイが必要な理由は?
Webhook ゲートウェイは、各ビルドのヘッダーとペイロードをチェックして、Webhook イベントのアクセラレーション スペースを検索するために存在します。
メッセージ ブローカによるルーティング
Webhook イベントは本質的に非同期であり、メッセージ ブローカーは非同期の言葉の変更を容易にするように設計されているため、メッセージ ブローカーと統合する Webhook の展開は、Webhook イベントの送信時に REST API 接続の欠点を完全に回避するのに役立ちます。
Convoy は、バックエンド プロバイダーから Convoy に Webhook を取り込むために、Message Broker 統合の解放を開始したのはそれほど昔のことではありません。 API プロバイダーの場合、これは、メッセージ ブローカーを使用してバックエンド プロバイダーから Convoy に Webhook イベントを取り込むために住居にいることを意味します。 Convoy は当面の間、Google PubSub と Amazon SQS に対応しています。
上記の計画は、Convoy がメッセージ キューから Webhook イベントをプルし、それらをコンシューマー エンドポイントに送信することを示しています。 Convoy は、メッセージ ブローカーと REST API の両方でイベントを送信するのに役立ちます。 この
セキュリティが優先される分野の顧客に Webhook を送信する API サプライヤであるとすぐに、彼らはおそらくそうするでしょう。おそらく、ファイアウォール上のすべてのインバウンド Webhook の IP をホワイトリストに登録する厳格なセキュリティ保険ポリシーが必要になる可能性があります。 これらの顧客を支援するために、おそらくあなたのイベントがホワイトリストに登録される静的 IP アドレスを彼らに提供したいと思うでしょう。 それにもかかわらず、機能をデプロイする最新の方法のほとんどは、IP アドレスがデフォルトでスタティックの住居で一時的なものであるように個人化されています。 Webhook 送信アプリケーションのフォワード プロキシとして。 Convoy は、静的 IP を個人的に使用する可能性のあるフォワード プロキシを使用して、アウトバウンド Webhook イベントを構成するのに役立ちます。
簡略化されたプランは、アウトバウンド要求の IP が消費者のエンドポイントに送信されるときにどのように変化するかを示しています。
安全
パトロンが閉じると、Webhook ゲートウェイは静かになり、効果的なクロークがいくつかのセキュリティ メカニズムを実装します。 Webhook 作成者と Webhook ショッパーは、それぞれ補完的な役割を果たし、悪意のある攻撃者に対抗してリクエストを阻止します。 API プロバイダーと顧客が Webhook ゲートウェイ レベルで準備できるいくつかのセキュリティ対策を具現化します:
- 署名付きペイロード: API 作成者は、次のようにリプレイ攻撃を防ぐことができます。彼らがペイロードにシグナルを送信し、生成されたタイムスタンプをすべてのビルドの問題の署名に具体化するとすぐに。 パトロン側では、署名されたペイロードは、署名が変更されていないことを確認するために、予想されるすべての変数と照合される可能性があります.
- 静的 IP: 買い物客のアプリは、すべての受信 webhook イベントの静的 IP アドレスがホワイトリストに登録されていることを確認するために、おそらく住居にいる可能性があります.
- 相互 TLS:コンシューマー アプリも同様に相互 TLS を使用して、サードパーティ プロバイダーからの接続要求が話題のサプライヤーからの真実のポイントにあることを明確にします。
モニタリングとインジケーター
モニタリングを有効にするのと同じくらい効果的に、Webhook ゲートウェイは失敗した Webhook リクエストをより簡単にデバッグできます。 例として、Convoy には Web インターフェースが含まれており、オペレーターはトーナメント ログでフィルタリングしたり、Webhook ペイロードで検索したり、すべてのビルド案件からの応答本文を調べたり、Webhook が失敗しているポイントを確認したり、これらの Webhook を手動で再送信したりすることもできます。 . ダッシュボードには、API サプライヤーまたは消費者であるかどうかに関係なく、すぐにアクセスできます。
Webhook ゲートウェイを使用して製品をスケーリングするためのもう 1 つの想像可能な公式は、そのケースを、より近い別の領域に展開することです。あなたの顧客。 クライアントの住居を節約するための Webhook リクエストのルーティングは、時代遅れの API Geolocation 基本的に完全にルーティングに基づいています。 地理的住居、主に主にベースの完全なルーティング解決が必要かどうかを決定する際に考慮すべき要素がいくつかあります。 それにもかかわらず、ヒントの結果は、実行するたびに同じです。主に、遅延によって引き起こされる障害を軽減します.
これが正確なアプリケーションでどのように機能するかを説明するために; バックエンド プロバイダーは英国のサーバーにデプロイされていますが、インドで実行されているショッパー アプリが必要になる可能性があります。 インドに近い Webhook ゲートウェイとして Convoy をデプロイし、Webhook イベントをメッセージ ディーラーに書き込むとすぐに、Convoy はそれらを定期的に受信し、インドのクライアントにルーティングします。 これらのイベントをインドのクライアントにルーティングすると、Webhook ゲートウェイの距離の結果として、個人的なネットワーク オーバーヘッドが少なくなります。
これは、API ゲートウェイで一般的であることに注意してください。 Webhook ゲートウェイの場合、これはおそらく、アリーナの離れた場所に複数の顧客を持つ巨大な企業に関連する可能性が最も高いでしょう.
バージョニング
Webhook リクエストのシグネチャは、ワームのレビューや新機能の必要性に応じて時間の経過とともに進化しますが、それらが進化するにつれて、これらの署名のバージョン管理は、段階的に老朽化した部分に直面するにつれて最も価値があることがわかります. さらに、バージョニングにより、API の顧客は自分のペースで署名に新しい変更を適用できます。 Convoy OSS および Cloud インストゥルメントはさらにこの機能をサポートしています。
結論
ここまでWebhook ゲートウェイを使用できる最も一般的な方法を主に確認する必要があるかもしれません。 Convoy は、Stripe と PagerDuty が 1 つのバイナリに固執するのと同等の、ハイテク企業で分解された webhook インフラストラクチャの最も細かい部分を民主化します。 あなたの製品のためにコンボイを準備するとき、おそらくあなたはおそらくあなたの欲しいものに合うこれらの部品のどれかを球の外に持っていくでしょう. コミュニティモデル または
を元の時刻にプロジェクト版