コンテンツにスキップ
Kong Logo | Kong Docs Logo
  • ドキュメント
    • API仕様を確認する
      View all API Specs すべてのAPI仕様を表示 View all API Specs arrow image
    • ドキュメンテーション
      API Specs
      Kong Gateway
      軽量、高速、柔軟なクラウドネイティブAPIゲートウェイ
      Kong Konnect
      SaaSのエンドツーエンド接続のための単一プラットフォーム
      Kong AI Gateway
      GenAI インフラストラクチャ向けマルチ LLM AI Gateway
      Kong Mesh
      Kuma と Envoy をベースにしたエンタープライズサービスメッシュ
      decK
      Kongの構成を宣言型で管理する上で役立ちます
      Kong Ingress Controller
      Kubernetesクラスタ内で動作し、Kongをプロキシトラフィックに設定する
      Kong Gateway Operator
      YAMLマニフェストを使用してKubernetes上のKongデプロイメントを管理する
      Insomnia
      コラボレーティブAPI開発プラットフォーム
  • Plugin Hub
    • Plugin Hubを探索する
      View all plugins すべてのプラグインを表示 View all plugins arrow image
    • 機能性 すべて表示 View all arrow image
      すべてのプラグインを表示
      AI's icon
      AI
      マルチ LLM AI Gatewayプラグインを使用してAIトラフィックを管理、保護、制御する
      認証's icon
      認証
      認証レイヤーでサービスを保護する
      セキュリティ's icon
      セキュリティ
      追加のセキュリティレイヤーでサービスを保護する
      トラフィック制御's icon
      トラフィック制御
      インバウンドおよびアウトバウンドAPIトラフィックの管理、スロットル、制限
      サーバーレス's icon
      サーバーレス
      他のプラグインと組み合わせてサーバーレス関数を呼び出します
      分析と監視's icon
      分析と監視
      APIとマイクロサービストラフィックを視覚化、検査、監視
      変革's icon
      変革
      Kongでリクエストとレスポンスをその場で変換
      ログ記録's icon
      ログ記録
      インフラストラクチャに最適なトランスポートを使用して、リクエストと応答データをログに記録します
  • サポート
  • コミュニティ
  • Kongアカデミー
デモを見る 無料トライアルを開始
Kong Gateway
3.8.x
  • Home icon
  • Kong Gateway
  • Production Deployment
  • Performance
  • Kong Gatewayのパフォーマンスベンチマークを確立する
report-issue問題を報告する
  • Kong Gateway
  • Kong Konnect
  • Kong Mesh
  • Kong AI Gateway
  • Plugin Hub
  • decK
  • Kong Ingress Controller
  • Kong Gateway Operator
  • Insomnia
  • Kuma

  • ドキュメント投稿ガイドライン
  • 3.10.x (latest)
  • 3.9.x
  • 3.8.x
  • 3.7.x
  • 3.6.x
  • 3.5.x
  • 3.4.x (LTS)
  • 3.3.x
  • 2.8.x (LTS)
  • アーカイブ (2.6より前)
  • はじめに
    • Kong Gatewayの概要
    • サポート
      • バージョンサポートポリシー
      • サードパーティの依存関係
      • ブラウザサポート
      • 脆弱性パッチ適用プロセス
      • ソフトウェア部品表
    • 安定性
    • リリースノート
    • 破壊的な変更
      • Kong Gateway 3.8.x
      • Kong Gateway 3.7.x
      • Kong Gateway 3.6.x
      • Kong Gateway 3.5.x
      • Kong Gateway 3.4.x
      • Kong Gateway 3.3.x
      • Kong Gateway 3.2.x
      • Kong Gateway 3.1.x
      • Kong Gateway 3.0.x
      • Kong Gateway 2.8.x 以前
    • キーコンセプト
      • サービス
      • ルート
      • コンシューマ
      • アップストリーム
      • プラグイン
      • コンシューマグループ
    • How Kong Works
      • ルーティングトラフィック
      • ロードバランシング
      • ヘルスチェックとサーキットブレーカ
    • 用語集
  • Kong を始めよう
    • Kong をゲットする
    • サービスとルート
    • レート制限
    • プロキシキャッシュ
    • キー認証
    • ロードバランシング
  • コングをインストールする
    • 概要
    • Kubernetes
      • 概要
      • Kong Gatewayをインストール
      • Admin API
      • Kong Manager をインストールする
    • Docker
      • docker run を使用する
      • 独自の Docker イメージをビルドする
    • Linux
      • Amazon Linux
      • Debian
      • Red Hat
      • Ubuntu
    • インストール後
      • データストアを設定
      • エンタープライズライセンスを適用
      • Kong Managerを有効にする
  • Kong in production
    • 展開のトポロジーズ
      • 概要
      • ハイブリッドモード
        • 概要
        • ハイブリッドモードでKong Gatewayをデプロイする
      • DB-lessデプロイ
      • 繁体字版
    • Running Kong
      • non-rootユーザーとしてKongを実行しています
      • 管理者 API の保護
      • systemdの使用
    • アクセスコントロール
      • コングゲートウェイを安全に開始
      • プログラムによる管理者の作成
      • RBAC を有効にする
    • ライセンス
      • 概要
      • ライセンスをダウンロード
      • エンタープライズライセンスのデプロイ
      • ライセンスAPIの使用
      • ライセンス使用状況をモニターする
    • ネットワーク
      • デフォルトのポート
      • DNSに関する考察
      • ネットワークとファイアウォール
      • CP/DP Communication through a Forward Proxy
      • PostgreSQL TLS
        • PostgreSQL TLS の設定
        • PostgreSQL TLS のトラブルシューティング
    • Kongの設定ファイル
    • 環境変数
    • KongからウェブサイトとAPIを提供する
    • モニタリング
      • 概要
      • Prometheus
      • StatsD
      • Datadog
      • ヘルスチェックプローブ
      • AIメトリクスを公開してグラフ
    • トレース
      • 概要
      • カスタム・トレース・エクスポーターの作成
      • トレースAPIリファレンス
    • リソースサイズのガイドライン
    • セキュリティアップデートプロセス
    • ブルー・グリーンの展開
    • カナリアのデプロイ
    • クラスタリングリファレンス
    • パフォーマンス
      • パフォーマンステストのベンチマーク
      • パフォーマンスのベンチマークを作成
      • Brotli圧縮によるパフォーマンスの向上
    • ロギングとデバッグ
      • ログの参照
      • ダイナミックログレベルの更新
      • ゲートウェイログをカスタマイズ
      • デバッグリクエスト
      • AIゲートウェイ分析
    • gRPCサービスの設定
    • 式ルータを使用
    • アップグレードと移行
      • 香港ゲートウェイ3.x.xをアップグレードする
      • バックアップと復元
      • アップグレードの戦略
        • デュアルクラスターのアップグレード
        • インプレイスアップグレード
        • 青緑色のアップグレード
        • ローリングアップグレード
      • 2.8 LTSから3.4 LTSにアップグレード
      • OSSからエンタープライズへ移行
      • 移行ガイドライン Cassandra から PostgreSQL
      • 新しい DNS クライアントに移行
      • 破壊的な変更
  • Kong Gateway Enterprise
    • 概要
    • シークレット管理
      • 概要
      • はじめに
      • ローテーション
      • 高度な使い方
      • バックエンドの設定
        • 概要
        • 環境変数
        • AWS シークレットマネージャー
        • Azure Key Vault
        • Google Cloud Secret Manager
        • HashiCorp Vault
      • How-To
        • AWS シークレットマネージャでデータベースを保護する
      • 参照フォーマット
    • 動的なプラグインの順序
      • 概要
      • 動的なプラグインの順序を始めましょう
    • 監査ログ
    • キーリングとデータ暗号化
    • ワークスペース
    • コンシューマグループ
    • イベントフック
    • データ プレーンレジリエンスの設定
    • 制御機の停止管理について
    • FIPS 140-2
      • 概要
      • FIPS 準拠パッケージをインストール
      • FIPS 140-2 準拠プラグイン
    • AWS IAMでKong Gateway Amazon RDSデータベースを認証する
    • 署名された香港の画像の署名を確認します
    • 署名された香港画像のビルド証明書を確認する
  • Kong AI Gateway
    • 概要
    • AI ゲートウェイを始めよう
    • LLM プロバイダー統合ガイド
      • OpenAI
      • Cohere
      • Azure
      • Anthropic
      • ミストラル
      • Llama2
    • AIプラットフォーム統合ガイド
      • Gemini
      • Amazon Bedrock
    • AIゲートウェイ分析
    • AI指標を公開・グラフ
    • AI Gateway plugins
  • Kong Manager
    • 概要
    • Kong Managerを有効にする
    • Kong Manager を始めましょう
      • サービスとルート
      • レート制限
      • プロキシキャッシュ
      • コンシューマーとの認証
      • 負荷バランス
    • 認証と承認
      • 概要
      • スーパー管理者を作成
      • ワークスペースとチーム
      • パスワードとRBACトークンをリセット
      • ベーシック認証
      • LDAP
        • LDAP の設定
        • LDAP サービス ディレクトリ マッピング
      • OIDC
        • OIDCの設定
        • OIDC 認証済みグループマッピング
        • 以前の設定から移行
      • セッション
      • RBAC
        • 概要
        • RBACを有効にする
        • ロールと権限を追加
        • ユーザーを作成
        • 管理者を作成
    • ネットワーク設定
    • ワークスペース
    • 顧客グループを作成
    • メールを送信中
    • トラブルシューティング
  • カスタムプラグインを開発
    • 概要
    • はじめに
      • はじめに
      • プラグインプロジェクトの設定
      • プラグインテストを追加
      • プラグイン設定を追加
      • 外部サービスを消費する
      • プラグインをデプロイ
    • ファイル構造
    • カスタムロジックの実装
    • プラグインの設定
    • データストアへのアクセス
    • カスタムエンティティの保存
    • カスタムエンティティをキャッシュ中
    • 管理者 API の拡張
    • テストを書く
    • 設置と配布
    • プロキシ-ワズムフィルター
      • プロキシワズムフィルタを作成
      • プロキシ-ワズムフィルタの設定
    • プラグイン開発キット
      • 概要
      • kong.client
      • kong.client.tls
      • kong.cluster
      • kong.ctx
      • kong.ip
      • kong.jwe
      • kong.log
      • kong.nginx
      • kong.node
      • kong.plugin
      • kong.request
      • kong.response
      • kong.router
      • kong.service
      • kong.service.request
      • kong.service.response
      • kong.table
      • kong.telemetry.log
      • kong.tracing
      • kong.vault
      • kong.websocket.client
      • kong.websocket.upstream
    • 他の言語でのプラグイン
      • 移動
      • Javascript
      • Python
      • コンテナでのプラグインの実行
      • 外部プラグインのパフォーマンス
  • Kong Plugins
    • 概要
    • 認証リファレンス
    • 複数の認証プラグインを許可
    • プラグインのキュー
      • 概要
      • プラグインキューイングリファレンス
  • Admin API
    • 概要
    • 宣言設定
    • Enterprise API
      • 情報ルート
      • 健康ルート
      • タグ
      • デバッグルート
      • サービス
      • ルート
      • コンシューマ
      • プラグイン
      • 証明書
      • CA 証明書
      • SNI
      • アップストリーム
      • ターゲット
      • ヴォールト
      • キー
      • チェーンをフィルター
      • ライセンス
      • ワークスペース
      • RBAC
      • 管理者
      • コンシューマグループ
      • イベントフック
      • キーリングとデータ暗号化
      • 監査ログ
      • Status API
    • オープンソースAPI
  • 参照
    • kong.conf
    • Nginx ディレクティブの注入中
    • CLI
    • キー管理
    • 表現の言語
      • 概要
      • 言語リファレンス
      • パフォーマンスの最適化
    • ライブラリのレート制限
    • WebAssembly
    • FAQ
enterprise-switcher-icon 次に切り替える: OSS
On this pageOn this page
  • 前提条件
  • ベースライン Kong Gateway パフォーマンス ベンチマークの実行
  • Kong Gatewayのパフォーマンスを最適化
    • 以下を確認してくださいulimit
    • 接続の再利用を増やす
    • 自動スケーリングの回避
    • 複数のコアを効果的に使用する
    • リソース競合
    • アップストリームサーバーの限界
    • クライアントの限界
    • カスタムプラグイン
    • クラウドプロバイダーのパフォーマンスの問題
    • ベンチマークテスト中の構成変更
    • 大規模なリクエストと応答本文
    • サードパーティシステムのボトルネック
    • アクセスログのI/Oのブロック
    • Kong Gateway の内部エラー
  • ベンチマークのための kong.conf の例
  • 次の手順
  • 詳細情報
旧バージョンのドキュメントを参照しています。 最新のドキュメントはこちらをご参照ください。

Kong Gatewayのパフォーマンスベンチマークを確立する

Kong Gatewayはすぐに使用できる状態で最適化されていますが、Kong Gatewayの構成オプションを微調整することによってパフォーマンスが大幅に向上する場合があります。 Kong Gatewayの初期ベンチマークを実行してkong.confを最適化し、さらにいくつかのベンチマークテストを実施することによって、パフォーマンスのベースラインを確立できます。

このガイドでは、次について説明します。

  • 初期 Kong Gateway パフォーマンス ベンチマークを確立する方法
  • 追加のベンチマークを実行する前にKong Gatewayパフォーマンスを最適化する方法
  • ベンチマーク用にkong.confを構成する方法

前提条件

ベンチマークテストを実施する前に、テストベッドが正しく構成されていることを確認する必要があります。以下は、ベンチマークテストを開始する前のいくつかの一般的な推奨事項です。

  • 多数の小さなKong Gatewayノードでなく、4つまたは8つのNGINXワーカーを対応するCPUリソース割り当てと併用して、Kong Gatewayのノード数を減らします。
  • Kong GatewayをDB-lessまたはハイブリッドモードで実行します。これらのモードでは、Kong Gatewayのプロキシノードはデータベースに接続されておらず、パフォーマンスに影響を及ぼす要素になる可能性があります。

ベースライン Kong Gateway パフォーマンス ベンチマークの実行

前提条件の推奨事項を実装すると、ベンチマーク テストを開始できます。

  1. Request Terminationプラグインでルートを構成し、Kong Gatewayのパフォーマンスを測定します。この場合、 Kong Gatewayはリクエストに応答し、アップストリームサーバーにトラフィックを送信しません。
  2. このテストを数回実行して、予期しないボトルネックを見つけます。Kong Gateway、ベンチマーク クライアント(k6 や Apache JMeter など)、またはその他のコンポーネントが予期しないボトルネックになる可能性があります。これらのボトルネックを解決するまでは、Kong Gateway のパフォーマンス向上は期待できません。このベースライン パフォーマンスが許容できる場合にのみ、次の手順に進んでください。
  3. ベースラインを確立したら、プラグインなしでアップストリームサーバーにトラフィックを送信するルートを設定します。 これは、Kong Gatewayのプロキシとアップストリームサーバーのパフォーマンスを測定します。
  4. 続行する前に、予期せずボトルネックを引き起こしているコンポーネントがないことを確認してください。
  5. データの信頼性を高めるために、ベンチマークを複数回実行します。 オブザベーション間の差が高くない(標準偏差が低い)ことを確認します。
  6. ベンチマークの最初の 1 回または 2 回の反復で収集された統計を破棄します。システムが最適かつ安定したレベルで動作していることを確認するために、これを実行することをお勧めします。

追加の構成で Kong Gateway のベンチマークを実行するには、前の手順を完了する必要があります。追加のベンチマークを実行する前に、次のセクションの最適化に関する推奨事項をよく読み、必要に応じて設定を変更してください。

Kong Gatewayのパフォーマンスを最適化

このセクションのサブセクションでは、追加のベンチマークテストでKong Gatewayパフォーマンスを向上させる 推奨事項について詳しく説明します。 各セクションを注意深く読み、構成ファイルに必要な調整を加えてください。

以下を確認してくださいulimit

アクション: ulimitが16384より小さい場合は、値を大きくします。

説明: Kong Gateway はシステムから得られる出来る限り多くのリソースを使用できますが、 オペレーティングシステム(OS)は Kong Gateway がアップストリーム(または他の)サーバーと開くことができるコネクション数、またはクライアントから受け入れることができるコネクション数を制限します。Kong Gatewayのオープン接続数はデフォルトでulimitに設定されており、上限は16384です。 つまり、 ulimitが無制限であるか、16384より大きい値である場合、Kong Gatewayは16384に制限されます。

Kong GatewayのコンテナまたはVMにシェルでアクセスしてulimit -nを実行すると、システムのulimitを確認できます。 Kong GatewayがVM上のコンテナ内で実行されている場合は、コンテナにシェルでアクセスする必要があります。 ulimitの値が16384より小さければ、それを増加させます。 また、これらのシステムで接続ボトルネックがあるとパフォーマンスが最適でなくなるため、クライアントとアップストリームサーバーで、 適切なulimitを確認して設定します。

接続の再利用を増やす

アクション: upstream_keepalive_max_requests = 100000とnginx_http_keepalive_requests = 100000を構成します。

説明: 10,000RPS以上の高スループットシナリオでは、TCPおよびTLS接続を設定するオーバーヘッドや不十分な接続により、ネットワーク帯域幅またはアップストリームサーバーの使用率が低下する可能性があります。接続の再利用を増やすには、 upstream_keepalive_max_requestsとnginx_http_keepalive_requestsを100000まで増やすか、最大の500000まで増やすことができます。

自動スケーリングの回避

アクション: Kong Gatewayが拡大/縮小(水平)または拡大/縮小(垂直)されていないことを確認します。

説明: ベンチマークの実行中は、Kong Gateway がスケールイン/スケールアウト(水平)またはアップ/ダウン(垂直)になっていないことを確認してください。Kubernetesでは、これは通常、水平または垂直ポッドオートスケーラーを使用して行われます。オートスケーラーはベンチマークの統計に干渉し、不要なノイズを発生させます。

ベンチマーク中に自動スケーリングされないよう、ベンチマークをテストする前にKong Gatewayをスケールアウトしてください。Kong Gateway ノードの数を監視して、ベンチマーク中に新しいノードが生成されることを確認し、 既存のノードは置き換えられません。

複数のコアを効果的に使用する

アクション: ほとんどの VM セットアップでは、 nginx_worker_processesをautoに設定します。Kubernetesではnginx_worker_processesを設定し ワーカーノードの CPUより1つまたは2つ少なくします。

説明: nginx_worker_processes が正しく構成されていることを確認してください。

  • ほとんどのVMセットアップでは、これをautoに設定します。これがデフォルト設定です。これにより、NGINXは1つのCPUコアに対して1つのワーカープロセスを生成するようになります。

  • Kubernetes でこれを明示的に設定することをお勧めします。Kong Gateway のための CPU のリクエストと制限が Kong Gateway で設定されたワーカーの数と一致することを確認します。たとえば、nginx_worker_processes=4 と設定すると、 ポッドのスペックでは 4 つの CPU をリクエストする必要があります。

    Kubernetesワーカーノードとn個のCPUを併用してKong Gatewayポッドを実行する場合、n-2またはn-1を Kong Gatewayに割り当てて、ワーカープロセスカウントをこの数と等しく構成します。 これにより、kubeletなどの設定済みのデーモンとKubernetesプロセスがKong Gatewayを持つリソースと競合しないように徹底できます。

    ワーカーが増えるたびにメモリ消費量が増加するため、Kong GatewayによってLinux Out-of-Memory Killerがトリガーされないことを確実にする必要があります。

リソース競合

アクション: クライアント(Apache JMeterやk6など)、 Kong Gateway 、およびアップストリームサーバーが異なる マシン (VM またはベアメタル)を低レイテンシで同じローカルネットワーク上で実行されていることを確認してください。

説明:

  • クライアント(Apache JMeterやk6など)、Kong Gateway、アップストリームサーバーが異なるタイプのマシン(VMまたはベアメタル)で実行することを確認します。 これらがすべてKubernetesクラスタで実行されている場合は、これら3つのシステム向けポッドのスケジュールが専用ノードで組まれるようにします。 これらシステム間でリソースが競合(通常はCPUとネットワーク)する場合、どのシステムでも最適なパフォーマンスが得られない可能性があります。
  • クライアント、Kong Gateway、およびアップストリームサーバーが同じローカルネットワーク上で低レイテンシーで動作していることを確認してください。クライアントと Kong Gateway 間、または Kong Gateway とアップストリームサーバー間のリクエストがインターネットを通過する場合、結果には不要なノイズが含まれることになります。

アップストリームサーバーの限界

アクション: アップストリームサーバーが負荷の上限に達していないことを確認してください。

説明: アップストリームサーバーのCPUとメモリをチェックすることで、アップストリームサーバーが最大限に達していないことを確認できます。追加のKong Gatewayノードをデプロイしても、スループットまたはエラーレートが変わらない場合は、アップストリームサーバーまたはKong Gateway以外のシステムがボトルネックになっている可能性があります。

アップストリームサーバーが自動スケーリングされないようにする必要があります。

クライアントの限界

アクション: クライアントはkeepalive接続を使用する必要があります。

説明: クライアント(k6やApache JMeterなど)が最大になることがあります。その調整には、クライアントを理解することが必要です。クライアントのCPU、スレッド、接続数を増やすと、 リソースの使用率とスループットが向上します。

また、クライアントはkeepalive接続を使用しなければなりません。たとえば、k6 とApache JMeterのHTTPClient4の実装は、デフォルトでどちらもkeepaliveが有効になります。これがテスト設定で適切に設定されていることを確認します。

カスタムプラグイン

アクション: カスタムプラグインがパフォーマンスを妨げていないことを確実にしてください。

説明: カスタムプラグインはパフォーマンスに問題を引き起こすことがあります。 まず、カスタムプラグインがパフォーマンスの問題の原因であるかどうかを判断する必要があります。これを行うには、次の3つの構成バリエーションを測定します。

  1. プラグインを有効にせずにKong Gatewayのパフォーマンスを測定します。これにより、 Kong Gatewayのパフォーマンスのベースラインが提供されます。
  2. 必要なバンドルプラグイン(製品に付属するプラグイン)を有効にしてから、Kong Gatewayのパフォーマンスを測定します。
  3. 次に、カスタムプラグイン(バンドルされたプラグインに加えて)を有効にして、Kong Gateway のパフォーマンスをもう一度測定します。

Kong Gateway のベースラインパフォーマンスが低い場合は、Kong Gateway の構成のチューニングが必要か、もしくは外部要因が影響している可能性があります。外部要因については、このガイドの他のセクションを参照してください。2 番目と 3 番目の手順のパフォーマンスに大きな差がある場合は、パフォーマンスの問題はカスタムプラグインが原因である可能性があります。

クラウドプロバイダーのパフォーマンスの問題

アクション: バースト可能なインスタンスを使用していないか、帯域幅、単位時間あたりのTCP接続、PPSの制限に達していないことを確認してください。

説明: 以下ではAWSについて言及しますが、同じ推奨事項はほとんどのクラウドプロバイダーに当てはまります。

  • AWSで、Tタイプのインスタンスのようなバースト可能なインスタンスを使用していないことを確認してください。 この場合、アプリケーションで使用できる CPU は変動するため、統計にノイズが発生します。 詳細については、バースト可能なパフォーマンスインスタンスのAWSドキュメントを参照してください。
  • 帯域幅制限、単位時間あたりのTCP接続数制限、またはパケット毎秒(PPS)制限に達していないことを確認してください。詳細については、Amazon EC2 インスタンスのネットワーク帯域幅に関する AWS ドキュメントを参照してください。

ベンチマークテスト中の構成変更

アクション: ベンチマークテスト中に Kong Gateway 構成を変更しないでください。

説明: テスト中に構成を変更すると、Kong Gatewayのテールレイテンシが急増する可能性があります。 そのため、構成変更後のKong Gatewayのパフォーマンスを測定する目的を除き、テスト中は構成を変更しないでください。

大規模なリクエストと応答本文

アクション: リクエストボディは8KB未満、レスポンス本文は32KB未満にしてください。

説明: ほとんどのベンチマーク設定は、通常、小さなHTTPボディとそれに対応するJSONまたはHTMLのレスポンスボディを含む HTTPリクエストで構成されます。 リクエストボディが 8 KB 未満、レスポンス本文が 32 KB 未満の場合は小さいとみなされます。 リクエストまたはレスポンスボディが大きい場合、Kong Gateway はディスクを使用してリクエストとレスポンスをバッファリングします。 これは Kong Gateway のパフォーマンスに大きな影響を与えます。

サードパーティシステムのボトルネック

説明: 多くの場合、Kong Gateway のボトルネックは、Kong Gatewayが使用しているサードパーティシステムのボトルネックが原因です。次のセクションでは、一般的なサードパーティのボトルネックとその解決方法について説明します。

Redis

アクション: Redisを使用し、いずれかのプラグインが有効になっている場合、CPUがボトルネックになる可能性があります。CPUを追加して、Redisを垂直方向に拡張します。

説明: Redisを使用し、いずれかのプラグインが有効になっている場合は、Redisがボトルネックになっていないことを確認してください。通常、CPUはRedisのボトルネックとなるため、まずCPUの使用状況を確認してください。この場合は、追加のCPUを追加してRedisを垂直方向に拡張します。

DNS クライアント

アクション: 新しい DNS クライアントに移行します。

説明 新しいDNSクライアントは、以前のものよりもパフォーマンスが高いように設計されているため、移行はパフォーマンスを向上させます。

DNS TTL

アクション:dns_stale_ttl を 300 または 86400 に増やします。

説明: Kong Gatewayはリクエストの送信先を決定するためにDNSに依存しているため、DNSサーバーがKong Gatewayのボトルネックになる可能性があります。

In the case of Kubernetes, DNS TTLs are 5 seconds long and can cause problems.

dns_stale_ttl または resolver_stale_ttl を増やすことができます。 使用しているDNSクライアントに応じて、300または86400までのDNSを問題として除外します。

DNSサーバーが根本原因である場合、CPUでボトルネックを発生させているポッドがcoredns個あることがわかります。

アクセスログのI/Oのブロック

アクション: 高スループットのベンチマークテストに対しては、proxy_access_log 設定パラメータを off に設定してアクセスログを無効にします。

説明: Kong Gatewayと基礎となるNGINXは非ブロッキングネットワーク I/O 用にプログラムされており、ディスク I/O のブロックを可能な限り回避します。ただし、アクセスログはデフォルトで有効になっており、Kong Gatewayノードに電力を供給するディスクが何らかの理由で襲い場合、パフォーマンスの低下につながる可能性があります。proxy_access_log構成パラメータをoffに設定して、高スループットベンチマークテストのアクセスログを無効にします。

Kong Gateway の内部エラー

アクション: Kong Gateway のエラーログにエラーがないことを確認します。

説明: Kong Gateway のエラー ログで内部エラーを確認します。 内部エラーにより、 Kong Gateway 内の問題、またはトラフィックを中継するために Kong Gateway が依存しているサードパーティ システムの問題が明らかになる場合があります。

ベンチマークのための kong.conf の例

次の kong.conf ファイルの例には、前のセクションで推奨されたすべてのパラメータが含まれています。

kong.conf
Environment variable format
Helm chart values.yaml

kong.conf を直接編集して設定を適用する場合は、以下を使用します。

# For a Kubernetes setup, change nginx_worker_processes to a number matching the CPU limit. We recommend 4 or 8.
nginx_worker_processes=auto

upstream_keepalive_max_requests=100000
nginx_http_keepalive_requests=100000

proxy_access_log=off

dns_stale_ttl=3600

環境変数を使用して設定を適用する場合は、以下を使用します。

# For a Kubernetes setup, change nginx_worker_processes to a number matching the CPU limit. We recommend 4 or 8.
KONG_NGINX_WORKER_PROCESSES="auto"
KONG_UPSTREAM_KEEPALIVE_MAX_REQUESTS="100000"
KONG_NGINX_HTTP_KEEPALIVE_REQUESTS="100000"

KONG_PROXY_ACCESS_LOG="off"

KONG_DNS_STALE_TTL="3600"

Helm チャートを通して構成を適用する場合は、以下を使用します。

# The value of 1 for nginx_worker_processes is a suggested value. 
# Change nginx_worker_processes to a number matching the CPU limit. We recommend 4 or 8.
# Allocate the same amount of CPU and appropriate memory to avoid OOM killer.
env:
  nginx_worker_processes: "1"
  upstream_keepalive_max_requests: "100000"
  nginx_http_keepalive_requests: "100000"
  proxy_access_log: "off"
  dns_stale_ttl: "3600"

resources:
  requests:
    cpu: 1
    memory: "2Gi"

次の手順

Kong Gatewayのパフォーマンスを最適化したので、追加のベンチマークを実行できます。 常に測定し、変更を加え、再度測定します。行き詰まったときに次のステップを理解したり、別のアプローチに戻ったりできるように、変更の記録を保存しておいてください。

詳細情報

  • パフォーマンステストのベンチマーク結果:Kongの現在のバージョンのパフォーマンステストのベンチマーク結果を見て、Kongのテストスイートを使用した独自のパフォーマンステストを実行する方法を学びましょう。
Thank you for your feedback.
Was this page useful?
情報が多すぎる場合 close cta icon
Kong Konnectを使用すると、より多くの機能とより少ないインフラストラクチャを実現できます。月額1Mリクエストが無料。
無料でお試しください
  • Kong
    APIの世界を動かす

    APIマネジメント、サービスメッシュ、イングレスコントローラーの統合プラットフォームにより、開発者の生産性、セキュリティ、パフォーマンスを大幅に向上します。

    • 製品
      • Kong Konnect
      • Kong Gateway Enterprise
      • Kong Gateway
      • Kong Mesh
      • Kong Ingress Controller
      • Kong Insomnia
      • 製品アップデート
      • 始める
    • ドキュメンテーション
      • Kong Konnectドキュメント
      • Kong Gatewayドキュメント
      • Kong Meshドキュメント
      • Kong Insomniaドキュメント
      • Kong Konnect Plugin Hub
    • オープンソース
      • Kong Gateway
      • Kuma
      • Insomnia
      • Kongコミュニティ
    • 会社概要
      • Kongについて
      • お客様
      • キャリア
      • プレス
      • イベント
      • お問い合わせ
  • 利用規約• プライバシー• 信頼とコンプライアンス
© Kong Inc. 2025