API Gateway 特性背后的趋势:Apache APISIX 3.0 与 Kong 3.0

Yilia Lin

Yilia Lin

October 16, 2022

Products

2022年9月28日、Kongは新しいKong Gateway 3.0をリリースし、いくつかの新機能とパフォーマンスの向上を実現しました。9月21日には、Apache Software FoundationのトップレベルプロジェクトであるApache APISIXもApache APISIX 3.0のプレビュー版をリリースし、エコシステムと機能面で10のハイライトを紹介しました。

これらの人気のあるオープンソースAPI Gatewayプロジェクトのバージョン3.0を詳しく見て、これらのアップデートの背後にある開発トレンドを探ってみましょう。

まず、Kong Gateway 3.0の8つのハイライトを見てみましょう。

Kong Gateway 3.0の8つのハイライト

ハイライトOSS/エンタープライズタイプターゲットユーザー改善点APISIXがサポートしているか備考
FIPS 140-2エンタープライズ版コンプライアンス北米の金融企業や政府機関コンプライアンスいいえ適用外
Secrets Management両方コンプライアンス金融企業OSS: 環境変数

エンタープライズ: AWS Secrets ManagerとHashiCorp Vault
はいAPISIXは2021年12月からOSSでHashiCorp Vaultをサポートしています: feat(vault): vault lua module, integration with jwt-auth authentication plugin

Kongは2022年2月: feat(vaults) adds vaults beta support to kong
Plugin Orderingエンタープライズ版ユーザビリティ複雑なシナリオを持つ大中規模企業プラグインによるビジネスの柔軟性を向上はいAPISIX 2022年6月: feat: allows users to specify plugin execution priority

Kong 2022年7月: feat(plugins) add support for ordering
Kong Manager 3.0エンタープライズ版ユーザビリティ技術チームが少ない中規模・大規模企業エンタープライズユーザーのためのAPI管理を改善はい適用外
Deep Websocket Supportエンタープライズ版機能WebSocketを深く使用するエンタープライズユーザーWebSocketスキームの検証とWebSocketフレームサイズの制限はい、部分的Kong 2016年12月: feat(proxy) supports websockets

APISIXはWebSocketリクエストプロキシをサポートし、2020年1月にlimit-connなどのプラグインと組み合わせて使用可能: feature: upstream support websocket enable
OpenTelemetry両方機能複雑なビジネスコールチェーンを持つ大中規模企業可観測性の向上はいKong 2022年6月: feat(plugins) opentelemetry plugin

APISIX 2022年1月: feat: add opentelemetry plugin
Performance Improvements両方パフォーマンスクラウドベンダー、急成長中のSaaSベンダーサーバーコストの削減はいApache APISIXは2019年のオープンソース化以来、他のAPIゲートウェイを凌ぐパフォーマンスを維持しています。
New Routing Engine両方パフォーマンスクラウドベンダー、急成長中のSaaSベンダー大量のAPIによるパフォーマンス問題を解決し、サーバーコストを削減はいKong 2022年7月: feat(router) new DSL based router support and tests fix

APISIX 2019年8月: feature: supported to use router lua-resty-radixtree

Kong Gateway 3.0のハイライトから、以下の3つのトレンドを分析できます:

  1. Kongは金融セクターのセキュリティとコンプライアンスへの投資が比較的大きく、FIPS 140-2への準拠とSecrets管理の観点から分析できます。
  • FIPS 140-2への準拠: FIPS 140-2は、北米の金融企業や政府機関が暗号化モジュールを承認するために使用するコンピュータセキュリティ標準です。Kong Gateway 3.0エンタープライズ版はBoringSSLに基づいて構築され、標準の要件に準拠するためにプラグインを適応させます。KongのFIPS 140-2サポートは、Kongの開発段階を反映しています: 7年間のイテレーションを経て、Kongは徐々に有料ユーザーに焦点を当て、金融企業や政府のニーズを満たす方向に進んでいます。

  • Secrets Management: この機能のターゲットユーザーも金融企業です。Kong Gateway 3.0では、ユーザーはAWS Secrets ManagerやHashiCorp Vaultに機密情報を安全に保存でき、Kongは実行時にそれらにアクセスできます。これにより、より高いレベルのセキュリティ保護が実現されます。

  1. 各ハイライトのPRリンクから、Kong Gateway 3.0の8つのハイライトのほとんどがApache APISIXによって先に実装されていることがわかります。

  2. Kong Gateway 3.0はパフォーマンス面で比較的大きな改善が見られます。その理由は2つあります:

  • Kongはルーティングにキャッシュ層を追加し、ベンチマークのパフォーマンスを大幅に向上させました。ただし、URLアドレスが変更されるとキャッシュが無効になるという問題があります。 詳細は以下のコードリンクを参照してください: atc.lua

  • KongはRustを使用して新しいルーティングエンジンを実装し、DSLを使用してルーティング層の表現力を向上させました。 HTTPリクエストの受信と送信時に、次のような式を書くことができます:

    net.protocol == "https" && (http.method == "GET" || http.method == "POST")

    特定のホストにマッチするリクエストルートのシナリオでは、次のような式を書くことができます:

    (http.host == "example.com" && http.headers.x_example_version == "v2" ) || (http.host == "store.example.com" && http.headers.x_store_version == "v1")

    Apache APISIXと比較すると、Apache APISIXは2019年8月に**Lua-resty-radixtree**を使用して同様のルーティング式機能を実装しています。 APISIXの式は任意のNGINX変数をサポートし、より豊富な演算子を持っています。一般的な数値や文字列比較に加えて、正規表現、配列、IPターゲティングもサポートしています。

Kong Gateway 3.0バージョンのこれらの8つのハイライトのほとんどはエンタープライズ版に偏っています。以下の2つの図は、Kongの技術開発トレンドをより直感的に反映しています。

Kong Gateway 3.0の8つのハイライトにおけるOSSとエンタープライズ版の比率

Kong Gateway 3.0でApache APISIXがサポートするハイライト

Kong Gateway 3.0でリリースされた機能は、セキュリティコンプライアンスをより重視する政府、金融業界、大企業に焦点を当てています。

Apache APISIX 3.0の8つのハイライトの分析

オープンソースAPI GatewayであるApache APISIXは、バージョン3.0のプレビューをリリースし、Apache APISIX 3.0バージョンの10のハイライトを紹介しました。著者は最も重要な8つのポイントを分析のために選びました。これらの8つのハイライトはすべてオープンソース版向けで、エコシステムと技術的改善に焦点を当てています。

ハイライトタイプターゲットユーザー改善点Kongがサポートしているか
ARM64の完全サポートエコシステム大規模なクラウド移行を行う企業サーバーコストの削減はい、部分的
gRPCクライアントパフォーマンスAPISIXの最適化要件最適化いいえ
強化されたサービスディスカバリーサポートエコシステム、機能マイクロサービスに依存するビジネスいいえ
xRPCフレームワークエコシステム、機能インターネット企業サーバーコストの削減いいえ
L4での可観測性機能複雑なビジネス機能を持つ大中規模企業可観測性の向上いいえ
Gateway APIのサポートエコシステムインターネット企業エンタープライズユーザーのためのAPI管理を改善はい
より多くのプラグイン: OpenFunction, ClickHouse, Elasticsearch, SAML, CASエコシステム、機能インターネット企業OSSの環境変数、エンタープライズ向けのAWS Secrets ManagerとHashiCorp Vaultいいえ
AIプレーンインテリジェンスインターネット企業大量のAPIによるパフォーマンス問題とサーバーコストの削減いいえ

上記の表から得られるもう一つの情報は、Apache APISIXがエコシステムと機能面で改善されていることです。これらのハイライトの中で、以下の2つのポイントが主なものです。

  • AIプレーン: データプレーンとコントロールプレーンに加えて、Apache APISIX 3.0ではAIプレーンを追加し、APIトラフィックと設定の学習と分析を通じて、アプリケーションと運用開発者の使用と運用の負担を軽減します。例えば、以下の2つのシナリオはAIプレーンによって自動的に最適化されます:

    1. 認証のないAPIを発見し、管理者にリスク警告を送信します。
    2. アクセス段階でのみプラグインが設定されているAPI(例: 認証)に対して、不要な段階をスキップして処理を高速化します。

    AIプレーンはトラフィック処理に新しい可能性をもたらします。将来的には、アップストリームサービスの自動ウォームアップやセキュリティ脅威の検出などもAIプレーンを通じて処理される可能性があります。

  • ARM64の完全サポート: ARM64はクラウドベンダーの非常に主流なサーバーアーキテクチャとなっています。AWS GravitonやGCP Tau T2Aなど、さまざまなクラウドベンダーがArmアーキテクチャに基づくサーバーの展開を開始しています。Apache APISIXはARM64に対して包括的なCI回帰テストを行い、ユーザーがArmアーキテクチャでApache APISIXを実行する際のスムーズさを確保しています。ユーザーはこれを非常に重視しています。GCPとAWSでのARMアーキテクチャのパフォーマンス比較は、_Hacker News_で100近いコメントを集めました。

結論

Kong Gateway 3.0は、コンプライアンス、ユーザビリティ、機能、パフォーマンスの面で新たな進展を遂げ、エンタープライズのセキュリティコンプライアンスにさらに焦点を当てています。Apache APISIX 3.0が導入したすべての機能はオープンソースであり、エコシステムと新技術の探求にさらに注目しています。

KongとApache APISIXが今後どのようにイテレーションと開発を進めるか、楽しみに待ちましょう!

Tags: