Apigee Cloud NAT のパフォーマンスに関する考慮事項

このページの内容は Apigee に適用されます。Apigee ハイブリッドには適用されません。

Apigee Edge のドキュメントを表示する。

Apigee とパブリック IP アドレスを持つターゲット バックエンド間の下りトラフィックでは、Cloud NAT を使用して Apigee インスタンスのプライベート IP アドレスがパブリック IP アドレスに変換されます。各 Apigee インスタンスには独自の Cloud NAT ゲートウェイがあります。このトピックでは、Cloud NAT の使用時に Apigee のパフォーマンスに影響を与える要素について説明します。

概要

Apigee インスタンスとターゲット バックエンドの間で形成される新しい TCP セッションはそれぞれ、以下を含む一意の 4 タプルにマッピングする必要があります。

  • NAT IP アドレス
  • NAT ポート
  • バックエンド IP アドレス
  • バックエンド ポート

Cloud NAT が Apigee インスタンスにおいてサポートできる 1 秒あたりのトランザクション数(TPS)を決定する要因には、次の 3 つがあります。

  1. 割り振られる NAT IP の数(動的または静的)
  2. 構成されたバックエンド IP アドレスとポートの一意の組み合わせの数
  3. 接続の再利用がターゲット バックエンドによって許可されるかどうか

このトピックでは、Cloud NAT 使用時にこれらの各要素が Apigee のパフォーマンスにどのように影響するかを説明し、予想されるトラフィックのサポートに必要な静的 IP の数を計算する方法について説明します。

NAT IP の割り振り

割り振られる NAT IP の数は、NAT 構成でエフェメラル IP または静的 IP を使用するかどうかによって異なります。詳細については、Cloud NAT の制限1 ゲートウェイあたりの NAT IP アドレス数をご覧ください。

エフェメラル IP

エフェメラル IP を使用したデフォルトの NAT 構成では、ターゲット バックエンドへの接続に一意の送信元ポートを提供するために、必要に応じて IP が自動的に割り振られます。

静的 IP

ターゲット バックエンドの IP を許可リストに登録するために静的 IP が必要な場合は、Apigee インスタンス用に IP を手動で予約します。

バックエンド IP とポートの一意の組み合わせ

一意のターゲット バックエンド IP とポートの組み合わせの数を増やすことで、TPS を増やすことができます。ターゲットのバックエンド IP とポートのそれぞれに対して、同じ NAT IP とポートを使用できます。これにより、許可リストに登録する必要がある IP を追加しなくても、NAT IP を追加した場合と同じ結果が得られます。

一意のターゲット バックエンド IP とポートのペアを作成するには、IP またはポートが異なっている必要があります。たとえば、1 つの IP アドレスを持つロードバランサを 1 つ用意し、4 つの異なるポートをリッスンすることで、Apigee 用に 4 つの一意のバックエンド IP とポートの組み合わせを作成できます。

接続の再利用

また、HTTP 接続を再利用すると、新しい TCP 接続を開く必要がなくなるため、NAT をより効率的に使用できます。ターゲット バックエンドでこの機能を使用するには、レスポンスの Connection ヘッダーを keep-alive に設定します。これは HTTP /1.1 のデフォルト設定です。ターゲット バックエンド サーバーで、connection timeout パラメータと max reuse パラメータを設定して効率性を改善することもできます。

接続の再利用は、理論的にはレスポンスで keep-alive を有効にすることでサポートできますが、実際には、接続の再利用は以下の内容により変わります。

  • Apigee インスタンスにターゲット バックエンドへの既存の接続がある場合
  • 既存の接続に保留中のレスポンスがある場合
  • 既存の接続がライフサイクルの終了に近づいている場合

これらの各要因は、ターゲット バックエンドで接続を再利用できる範囲に影響します。