次の方法で共有


Azure Container Apps でのセッション アフィニティ

セッション アフィニティ (スティッキー セッションとも呼ばれます) は、クライアントから同じレプリカにすべての要求をルーティングできる機能です。 この機能は、同じレプリカへの一貫性のある接続を必要とするステートフル アプリケーションに役立ちます。

セッションの持続性は、HTTP Cookie を使用して適用されます。 この機能は、HTTP イングレスが有効になっている場合に、単一リビジョン モードで使用できます。 前のレプリカが使用できなくなった場合、クライアントは新しいレプリカにルーティングされることがあります。

アプリでセッション アフィニティが必要ない場合は、これを有効にしないことをお勧めします。 セッション アフィニティを無効にすると、イングレスでは要求をレプリカ全体にさらに均等に分散させるため、アプリのパフォーマンスが向上します。

セッション アフィニティは、アプリが単一リビジョン モードで、イングレスの種類が HTTP 場合にのみサポートされます。

セッション アフィニティを構成する

セッション アフィニティは、affinity 構成セクションの ingress.stickySessions プロパティを設定することによって構成されます。 次の例は、コンテナー アプリのセッション アフィニティを構成する方法を示しています。

{
  ...
  "configuration": {
      "ingress": {
          "external": true,
          "targetPort": 80,
          "transport": "auto",
          "stickySessions": {
              "affinity": "sticky"
          }
      }
  }
}

Azure portal を使用してコンテナー アプリを作成するときに、セッション アフィニティを有効にすることができます。 セッション アフィニティを有効にするには、次のようにします。

  1. Azure portal のホーム ページから開始し、上部の検索バーで Container Apps を検索します。

  2. 検索結果で [Container Apps ] を選択し、[ 作成 ] ボタンを選択します。

  3. [ 基本 ] タブと [ コンテナー] タブで、各セクションで必要なすべての値を指定し、[ イングレス ] タブを選択します。

  4. [ アプリケーションのイングレス設定] セクションで、[ イングレス ] を [有効] に設定します。 有効にすると、 セッション アフィニティ 設定が使用可能になります。

  5. [セッション アフィニティ] で [有効] を選択します。

[コンテナー アプリの作成] ページのセッション アフィニティ設定のスクリーンショット。

コンテナー アプリの作成後に、セッション アフィニティを有効または無効にすることもできます。 セッション アフィニティを有効にするには、次のようにします。

  1. ポータルでアプリに移動します。
  2. [イングレス] を選択します。
  3. [セッション アフィニティ] の有効化または無効化は、[有効] を選択または選択解除して行うことができます。
  4. [保存] を選択します。

[イングレス] ページのセッション アフィニティ セッションのスクリーンショット。

次のステップ