すべてのプロダクト
Search
ドキュメントセンター

Microservices Engine:スロットリングルールの作成

最終更新日:Jan 08, 2025

スロットリングルールは、監視対象のアプリケーションまたはサービスの 1 秒あたりのクエリ数 (QPS) が指定したしきい値に達した場合にトラフィックを即座にブロックするために使用されます。 これにより、トラフィックの急増によるアプリケーションの停止を防ぎ、アプリケーションの高可用性を確保します。 このトピックでは、スロットリングルールを作成する方法と、一般的なシナリオのスロットリングルールの例を示します。

前提条件

背景情報

スロットリングは、ネットワーク伝送における一般的な概念であり、ネットワークパケットの送信を調整するために使用されます。 システムが処理する必要のあるリクエストはランダムであり、制御できません。 ただし、システムのリクエスト処理能力には制限があります。 したがって、スロットリングは、システムのリクエスト処理能力に基づいて実装する必要があります。

手順

  1. MSE コンソール にログインし、上部のナビゲーションバーでリージョンを選択します。

  2. 左側のナビゲーションペインで、Microservices Governance > Application Governance を選択します。

  3. Application list ページで、目的のアプリケーションのリソースカードをクリックします。

  4. アプリケーションの詳細ページで、次のいずれかの方法でスロットリングルールを作成します。

    • 左側のナビゲーションペインで、Application overview をクリックします。 表示されるページで、Through QPS TOP タブをクリックします。 [通過 QPS TOP] タブで、スロットリングルールを適用するインターフェースを見つけ、Actions 列の Flow Control をクリックします。

    • 左側のナビゲーションペインで、API Details をクリックします。 表示されるページの [WEB サービス] タブで、Interface Flow Control タブをクリックします。 [インターフェースフロー制御] タブで、Add Throttling Rule をクリックします。

    • 左側のナビゲーションペインで、Traffic management をクリックします。 表示されるページで、Flow protection タブをクリックします。 [フロー保護] タブで、Interface Flow Control タブをクリックします。 [インターフェースフロー制御] タブで、Add Throttling Rule をクリックします。

  5. Add Throttling Protection Rule または Add Rule ダイアログボックスで、ルールパラメータを設定します。 ルールパラメータの詳細については、このトピックのパラメータセクションを参照してください。

  6. [新規] をクリックします。

一般的なシナリオ: ピーク負荷のシフトを実装してリクエストを一定の速度で処理する

リクエストトラフィックは、ピーク時とオフピーク時に変動します。 スロットリングを実装して、ピークトラフィックを特定の期間 (キューイング時間) だけ遅延させて処理することができます。 これにより、ユーザーエクスペリエンスに影響を与えることなく、すべてのリクエストを処理できます。

Add Throttling Protection Rule または Add Rule ダイアログボックスで、次のパラメータ設定を使用してスロットリングルールを作成します。

  • Stand-alone QPS threshold パラメータを 5 に設定します。

  • Flow control effect パラメータを Waiting in line に設定します。

  • Timeout パラメータを 5000 に設定します。 単位: ミリ秒。

システムは 200 ミリ秒ごとにリクエストを処理し、累積されたリクエストはキューに入れられます。 キューイングタイムアウト期間は 5000 ミリ秒に設定されています。 リクエストが 5,000 ミリ秒を超えてキューに入れられている場合、リクエストは失敗し、スロットリングのために表示されるテキストや静的ページなどのデフォルト情報が直接返されます。

パラメータ

次の表に、Add Throttling Protection Rule または Add Rule ダイアログボックスで設定する必要があるパラメータを示します。

パラメータ

説明

Interface name

スロットリングルールを適用するインターフェースの名前。

Whether to open

スロットリングルールを有効にするかどうかを指定します。 スロットリングルールは、スイッチをオンまたはオフにするとすぐに有効または無効になります。

Stand-alone QPS threshold

スロットリングルールをトリガーする QPS しきい値。

Flow control effect

ブロックされたリクエストを処理するために使用される方法。 有効な値:

  • Fast failure: QPS しきい値に達すると、リクエストはすぐにブロックされます。 返される内容は、アプリケーションのシステム設定における適応モジュールの設定によって異なります。

  • Waiting in line: リクエストは一定の速度で処理され、累積されたリクエストはキューに入れられます。 ほとんどの場合、この値は、ピーク負荷のシフトなどのシナリオに指定されます。 リクエストのキューイングタイムアウト期間を指定する必要があります。 リクエストのキューイング時間がキューイングタイムアウト期間を超えると、リクエストは失敗します。