Airwallex 如何利用 Apache APISIX 赋能全球支付?
Yang Li
November 3, 2021
概要
課題
- Airwallexのビジネスが世界中に拡大するにつれ、データガバナンスにおける重要な課題が生じている
- 複数のシステムとその相互接続の複雑な管理により、1つの問題が発生すると他のシステムにも問題が波及する
成果
- 15ヶ月間の本番環境での安定したパフォーマンスを実現
- 動的ルーティング、マルチテナントのレートリミット、マルチテナントのIPホワイトリスト、認証、認可が有効な状態で、99%の応答遅延が23ミリ秒以内に収まる
- 130以上の国と地域で50以上の通貨をカバーするデータ主権を安全かつ効率的にサポート
Airwallexについて
グローバルなフィンテック企業であるAirwallexは、世界中の130以上の国と地域で50以上の通貨をカバーする支払いネットワークを構築し、企業向けのデジタルフィンテック製品を提供しています。
この記事は、Apache APISIXのコミッターであり、Airwallexの技術プラットフォームリードを務める楊莉博士へのインタビューに基づいています。楊博士は、Airwallexの技術プラットフォームの進化を担当しています。
データ主権がAirwallexに与える課題
データ主権は、サイバースペースのデータガバナンスにおいてますます重要になっています。Airwallexはさまざまな地域のユーザーにサービスを提供しており、自然とデータ主権の問題が発生します。
以前は、データ主権の要件がなかったため、データをヨーロッパに配置し、アジアや世界の他のデータセンターに同期することができました。データの相互作用図は以下のようになります。
しかし、データ主権が重視される時代においては、データは管理下に置かれ、以前のアーキテクチャを採用することはできません。ヨーロッパではヨーロッパのデータのみを処理し、同様にアジアではアジアのデータのみを処理します。データの相互作用は以下のように変化します。
その結果、データ主権はAirwallexのグローバルビジネスにとって重要な課題となっています。Airwallexはヨーロッパから他の地域にデータを移行することを計画しており、EUのデータ主権要件と第三国の要件が一致していることを確認する必要があります。
AirwallexがAPISIXを選んだ理由
APIゲートウェイを選択する際、Airwallexは主に6つの観点から主要なゲートウェイ製品を比較しました。
-
安定性: AirwallexはAPIゲートウェイの安定性を非常に重視しています。世界のトップ1000ウェブサイトのうち、62.1%がNGINXベースであり、NGINXベースのウェブサーバーが本番環境での複雑で多様なシナリオを通過していることを示しています。Apache APISIXはNGINXをベースとしています。さらに、**Apache APISIXの完全動的**機能の設計により、リロードなしでルートを変更し、クライアントの長い接続を維持することが可能です。また、AirwallexはApache APISIXにストレステストを実施し、CPU使用率が70%を超えても安定して動作することを確認しました。
-
パフォーマンス: すべてのAPIリクエストはAPIゲートウェイを通過します。ゲートウェイのパフォーマンス損失を減らすことで、AirwallexのAPI全体の応答時間を大幅に短縮できます。
「PoCでは、主要なゲートウェイ製品を比較しました。Apache APISIXの応答遅延は他のゲートウェイよりも50%以上低いです。さらに、Apache APISIXの独立したデータプレーンにより、クラスター内で独立したインスタンスを実現し、水平拡張を本質的にサポートしています。」と李は述べました。
-
拡張性: Airwallexは、複雑な**認証、権限制御、サービスディスカバリー、レートリミット、ダウングレード、ロードバランシング、ホワイトリスト、動的ルーティング**をサポートするAPIゲートウェイとしてAPISIXを必要としています。
-
活発なコミュニティ: 活発なコミュニティは、APIゲートウェイが技術の進化に追いつくための鍵です。
**Apache APISIXのコミュニティは、Apacheインキュベーションプロジェクトであった時から活発で、貢献者数、Issueの応答時間、Pull Requestの数から判断できます。**と李は共有しました。
-
プライベートデプロイメント: APIゲートウェイはAirwallexのコア技術アーキテクチャコンポーネントであり、自社のプライベートネットワークのエッジにAPIゲートウェイをデプロイします。Apache APISIXは環境適応性が高く、クラウドコンピューティングプラットフォームを含むさまざまな環境に簡単にデプロイできます。
-
ビジネスフレンドリーなオープンソースライセンス: Apache 2.0ライセンスにより、AirwallexはAPISIXのコードを変更し、商用化することができ、ベンダーロックインを心配する必要がありません。
Apache APISIXのインテリジェントルーティングソリューション
AirwallexはApache APISIXを選択し、インテリジェントルーティングソリューションを実現しました。データをどこで処理するかは、Apache APISIXゲートウェイが決定します。
ゲートウェイは2層で構成されています。第1層はリクエストのルーティングを担当し、条件に基づいてリクエストがどのデータセンターに到達すべきかを決定します。第2層はトラフィックの転送を担当します。
さらに、Airwallexは主要な機能をカスタムプラグインとして実装し、いつでも新しいバージョンのApache APISIXにアップグレードできるようにしました。これにより、AirwallexのコードライブラリとApache APISIXのメインリポジトリのコアコードとの間に競合条件が発生しません。ただし、コアコードを変更する必要がある場合もあります。その場合、李はできるだけオープンソースコミュニティでこれらの機能を実装しようとします。コミュニティの貢献者は機能の実装について熱心に議論し、ほとんどの場合、すぐに利用可能なソリューションを提供できます。
AirwallexがAPISIXを使用することで得られるメリット
以下は、AirwallexがAPISIXと統合した図です。
AirwallexはApache APISIXをマイクロサービスゲートウェイモデルのコアコンポーネントとして採用しています。ネットワークのエッジにデプロイされ、Airwallexに入るすべてのトラフィックに対して一般的なゲートウェイ機能を提供します。解決する問題は以下の通りです。
-
データ主権: 国境を越えて運営される金融インフラストラクチャにとって、データ主権は重要な規制要件です。このため、AirwallexはApache APISIXの動的上流選択機能を活用して、規制に準拠した動的ルーティングプラグインを開発しました。動的ルーティングは、ユーザーリクエストの特性に応じて上流をインテリジェントに選択し、複数のデータセンター間の協調問題をサービス層からゲートウェイ層に抽象化します。動的ルーティングの本質は、上流をどのようにグループ化するか、およびリクエストとグループをどのようにマッチングするかという2つの質問に答えることです。
-
マイクロサービス内の分離: Airwallexは、各マイクロサービスのエンジニアリングチームが独自のサービスを独立して制御できることを望んでおり、コミュニケーションと調整のコストを効果的に削減し、エンジニアリング効率を向上させます。このアーキテクチャの概念では、APIゲートウェイなどのさまざまなチームが共有するインフラストラクチャコンポーネントがテナント分離をサポートできる必要があります。**APISIXはテナント分離を満たすのに最適です。**システム全体の堅牢性とコスト管理を確保しながら、APISIXはビジネスチームが独自のニーズに応じてゲートウェイ機能を設定および拡張できるようにし、マイクロサービスチームとサービスの独立性を維持します。
-
マルチテナントのレートリミット: マルチテナント環境では、各テナントのトラフィック特性が異なります。異なるテナントに同じレートリミットを適用することは、商業的なニーズを満たすことができません。マルチテナントのレートリミットは、ユーザー特性に基づいてより適切に行うことができます。
-
マルチテナントのIPホワイトリスト: マルチテナント環境では、各テナントのアクセスIPが異なります。マルチテナントのIPホワイトリストにより、各テナントは他のユーザーが自分のリソースに侵入することを心配することなく、独自のホワイトリストを制御できます。
-
認証: 頻繁なキー更新は、ユーザーリソースの安全性を確保するための重要なリンクです。APISIXはリクエストの認証だけでなく、動的なキー更新もサポートしています。
-
認可: 企業アプリケーションの権限管理は非常に複雑で、異なるアプリケーションシナリオでは完全に異なる権限管理モデルがあります。APISIXはルーティング設定に基づいて、リクエストユーザーがインターフェースにアクセスするための十分な権限を持っているかどうかを検証し、不正なトラフィックを最初に遮断できます。
Airwallexの本番環境は15ヶ月間稼働しており、全体的なパフォーマンスは非常に安定しています。動的ルーティング、マルチテナントのレートリミット、マルチテナントのIPホワイトリスト、認証、認可などの機能が有効な状態で、99%の応答遅延が23ミリ秒以内に収まります。
**Apache APISIXの優れたプラグインメカニズムのおかげで、Airwallexはコアコードを変更することなく、ビジネスニーズに合ったプライベートプラグインを追加できます。**完全なテストシステムはソフトウェア品質をさらに保証し、元のコアロジックを損なうことなくプラグインの個別要件を安全に増やすことができます。
今後の計画
Airwallexの今後の計画は主に以下の3つの側面を含みます。
-
マルチレイヤーネットワークを使用して、ゲートウェイロジックを異なるレイヤーに分割し、データ主権やその他のゲートウェイロジックに基づいてトラフィックを分散します。
-
読みやすく使いやすいルーティング管理は、APIゲートウェイの成功にとって重要です。ルーティング管理は開発者にとってフレンドリーである必要があり、開発者がゲートウェイが何を提供できるか、どのように設定および公開するかを簡単に理解できるようにする必要があります。
-
カラーコードリクエストを使用して、本番環境テストを実装します。APIゲートウェイのカラーコードリクエストを使用して本番環境テストを実装することで、より多くの柔軟性と使いやすさをもたらすことができます。
APISIXのサポートをお探しですか?
Apache APISIXは、すべてのAPIとマイクロサービス向けのオープンソースで動的、拡張可能、高性能なクラウドネイティブAPIゲートウェイです。API7.aiによってApache Software Foundationに寄贈されたAPISIXは、トップレベルのオープンソースApacheプロジェクトに成長しました。
Airwallexのように自信を持って開発を加速したいですか?APISIXサポートを最大限に活用するには、API7が必要です。私たちは、APISIXとAPI管理ソリューションに基づいて、ニーズに応じた深いサポートを提供します!
今すぐお問い合わせください: https://api7.ai/contact.
インタビュー対象者についての詳細: