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

Microservices Engine:ルートの作成

最終更新日:Apr 21, 2025

クラウドネイティブゲートウェイがアクセスリクエストを受信すると、ゲートウェイはルーティングルールの優先順位に基づいて、リクエストをルートと 1 つずつ照合します。 ゲートウェイは、ルーティングルールの優先順位に基づいて、降順でリクエストをルートと照合します。 リクエストがルートと一致する場合、リクエストは宛先サービスにルーティングされます。 リクエストがルートと一致しない場合、エラーコード 404 が返されます。

ルート一致の優先順位

複数のルーティングルールが存在する場合、ルーティングルールの優先順位は、高いものから低いものの順に、[関連付けられたドメイン名] > [パス] > [リクエストヘッダー] > [リクエストパラメーター] > [作成時間] の順にソートされます。

  1. [ドメイン名] に基づいてルートの優先順位を決定します。 ルートのドメイン名文字列の長さが長いほど、ルートの優先順位は高くなります。

  2. 以下のシナリオでは、ルートの [パス] に基づいてルートの優先順位を決定します。

    • 複数のルートの [パス一致ルール] が異なる場合、ルートの優先順位は、高いものから低いものの順に、[等しい] > [プレフィックス] > [正規表現一致] の条件に基づいてソートされます。

    • 複数のルートの [パス一致ルール] が同じ場合、ルートの [パス] 文字列の長さが長いほど、ルートの優先順位は高くなります。

  3. ルートの [リクエストヘッダー] 内のキーと値のペアの総数に基づいて、ルートの優先順位を決定します。 ルートのリクエストヘッダー内のキーと値のペアの総数が大きいほど、ルートの優先順位は高くなります。

  4. ルートの [リクエストパラメーター] 内のキーと値のペアの総数に基づいて、ルートの優先順位を決定します。 ルートのリクエストパラメーター内のキーと値のペアの総数が大きいほど、ルートの優先順位は高くなります。

  5. 作成時間 に基づいてルートの優先順位を決定します。 ルートの作成時間が早いほど、ルートの優先順位は高くなります。

手順

説明

ルート構成は、HTTP 1.0、HTTP 1.1、HTTP 2.0、gRPCWebSocket を含む HTTP をサポートしています。

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

  2. 左側のナビゲーションペインで、Cloud-Native Gateway > ゲートウェイリスト を選択します。 [ゲートウェイ] ページで、ゲートウェイの名前をクリックします。

  3. 左側のナビゲーションペインで、Routes タブをクリックします。 [ルート] タブで、Add Route をクリックします。

  4. [ルートの追加] ページで、パラメーターを設定し、[保存] をクリックします。

    説明
    • ルーティングルール内のすべての条件が満たされると、ルートが一致します。 より多くの条件を指定すると、一致するリクエストが少なくなります。

    • リクエストは、[ルート] ページに表示される順序に基づいてルートと一致します。

    パラメーター

    説明

    Route Name

    作成するルートの名前。 [説明を追加] をクリックし、[ルートの説明] フィールドにルートの説明を入力できます。

    ドメイン名

    ルートに一致させる 1 つ以上のドメイン名を選択します。

    ドメイン名を作成するには、[ドメイン名] ドロップダウンリストの下にある [ドメイン名の追加] をクリックし、[ドメイン名の追加] パネルでパラメーターを設定してドメイン名を作成します。

    Match Rule

    Path

    ルートで転送する HTTP リクエストのパス パラメーター。

    • 複数のルートのパス一致ルールが同じ場合、ルートのパス値の長さが長いほど、ルートの優先順位は高くなります。

    • 複数のルートのパス一致ルールが異なる場合、ルートの優先順位は、高いものから低いものの順に、[等しい] > [プレフィックス] > Regular Expression Match の条件に基づいてソートされます。

      • [等しい]: 完全なパスを使用して、リクエストをルートと照合します。 たとえば、パス パラメーターを /user に設定できます。

      • [プレフィックス]: パスのプレフィックスを使用して、リクエストをルートと照合します。 たとえば、プレフィックスを /user として指定できます。

      • 正規表現一致: 正規表現を使用して、リクエストをルートと照合します。

    Method

    HTTP リクエストをルートと照合するために使用されるメソッド パラメーター。 メソッド パラメーターに複数の値を指定して、より多くのリクエストをルートと照合できます。 デフォルトでは、[ANY] が選択されています。

    Header

    HTTP リクエストをルートと照合するために使用されるヘッダー パラメーター。 指定されたヘッダー パラメーターの数以外に同じ一致条件を持つ複数のルートがある場合、ルール内のヘッダー パラメーターの数が多いルートの方が優先順位が高くなります。

    Query Parameters

    HTTP リクエストをルートと照合するために使用されるクエリ パラメーター。 指定されたクエリ パラメーターの数以外に同じ一致条件を持つ複数のルートがある場合、ルール内のクエリ パラメーターの数が多いルートの方が優先順位が高くなります。

    シナリオ

    ルートの宛先サービスのタイプを選択します。

    • 基本シナリオ: Single Service

    • カナリアリリース シナリオ: Multiple Services および Tag-based Routing

    • その他のシナリオ: Mock および Redirect

    宛先サービスの種類の詳細については、「ルーティングモード」をご参照ください。

    説明

    重みを設定する宛先サービスのトラフィックの割合の合計は 100% でなければなりません。

    バックエンド サービス

    関連付けられたバックエンド サービスとポートを選択します。

    説明
    • [サービス名] ドロップダウンリストから [サービスの関連付け] を選択し、[サービスの関連付け] パネルでソースとサービスを選択します。

    • 追加できるソースの数は、ソースの種類によって異なります。

      • ソースの種類が [コンテナー サービス] に設定されている場合、最大 5 つのソースを追加できます。

      • ソースの種類が [MSE Nacos] または [MSE ZooKeeper] に設定されている場合、1 つのソースのみを追加できます。

      • ソースの種類が [EDASビルトインレジストリ] または [SAEビルトインレジストリ] に設定されている場合、無制限の数のソースを追加できます。

    フォールバック

    ビジネス要件に基づいてフォールバック サービスを指定します。 ルートが指すバックエンド サービスで使用可能なノードがない場合、元の要求は指定したフォールバック サービスにアクセスします。

    説明

    HTTP サービス間のフォールバック機能のみがサポートされています。

    タイムアウト期間(秒)

    タイムアウト期間を入力します。 デフォルト値は 60 です。 値を 0 に設定すると、タイムアウトは発生しません。

    再試行回数(回)

    再試行回数を入力します。 デフォルト値は 2 です。 この値を 0 に設定すると、再試行は許可されません。

    再試行条件

    再試行条件を選択します。

    再試行ステータス コード

    1 つ以上の再試行ステータス コードを追加します。

参照

ビジネス要件に基づいて、いつでもルーティングルールを変更できます。 詳細については、「ルートの管理」をご参照ください。