Fiorano ESB®: グローバルな為替トレーディング プラットフォーム
|
|
キーポイント
- メッセージング基盤
- レイテンシー
- スケーラビリティ
- コンポーネント ベース アーキテクチャによるモジュラリティ
- イベントに基づくエラー トラッキング
- サービス開発期間の大幅な短縮
|
『 50,000 を超えるクライアントからの毎月 700 億ドルに達する為替取引を抱え、FXCM はこの課題を技術面で解決するだけではなく、その開発期間をも短縮する製品を必要としていました。この両面において、Fiorano は他の製品と比して優れていたのです。高い信頼性、スケーラビリティ、パフォーマンス、実装の容易性などの優れた点が多く、弊社のミッションクリティカルな為替取引システムに最も適したエンジンとして Fiorano ESB を選択しました。』
FXCM, L.L.C チーフ ソフトウェア アーキテクト Vladimir Panasenko 氏
|
導入事例の概要
FXCM 社は、50,000 人を超えるユーザーと 70 億ドルを超える取引量に耐えられる技術と、アプリケーション システムを迅速に構築できる機能を併せ持ったミドルウェア製品を必要としていました。これを解決するためには、モジュラー技術によるソリューション構築、信頼性の高いメッセージング、高いスケーラビリティの 3 つが不可欠であるとの結論に達しました。
FXCM のソリューションは、Fiorano ESB のコンポーネント アーキテクチャの利点をフルに引き出すよう設計されています。Fiorano のコンポーネント アーキテクチャの最大の利点は、既存のアプリケーションに変更を加えることなく、SOA に基づくビジネス プロセスを新規に構築できる点にあります。ビジネス プロセスはサービス コンポーネントによって構成され、既存アプリケーションはサービス コンポーネントから呼出されます。これによって、既存トレーディング システムのビジネス ロジックをそのまま活かしながら、従来のモノシリックなシステムから柔軟性に富むアジャイルな SOA システムへと変革しました。
本事例の章
- FXCM 社の概要
- ビジネス上の課題
- ソリューション
- 効果
- 採用理由
- 参考資料
FXCM 社の概要
FXCM は、為替トレーディング業界におけるノンバンク系の最大手です。FXCM は、外貨為替マーケットへのアクセス手段をトレーダーに提供するビジネスを展開しており、世界 80 カ国で 50,000人の個人顧客と 400社の企業顧客を有しています。また、為替市場との直接的でリアルタイムな取引処理技術のパイオニアでもあります。
ビジネス上の課題
FXCM 社は、50,000 人を超えるユーザーと 70 億ドルを超える取引量に耐えられ、かつアプリケーション システムを迅速に構築できるミドルウェア製品を必要としていました。具体的な問題点には、以下に挙げるものがありました。これらを解決するためには、モジュラー技術によるソリューション構築、信頼性の高いメッセージング、高いスケーラビリティが必要であるという結論に達していました。また、コスト削減も重要なファクタでありました。
- スケーラビリティに関する問題
顧客数が急速に増加しているという状況にありました。増え続ける同時接続ユーザー数に対処するためには、膨大な量のメッセージを処理できるミドルウェアを増設することが必要となっていました。また、バックエンド システムには、ミドルウェアが必要とする充分なリソースも必要でした。
- 柔軟性に欠けるアーキテクチャ
既存のメッセージング アーキテクチャは、コンポーネント アーキテクチャに基づく新しいアプリケーション構築技術をサポートしていませんでした。
- 信頼性に欠けるリモート接続のメッセージ
世界中の顧客をサポートしているため、インターネットの信頼性が低い国や地域の顧客へのサービス提供が問題となっていました。特に、これらの地域の顧客へのレイテンシーの問題は、重大な関心事でした。レイテンシーの解決策として、プロキシー サーバーをこれらの地域に配置しなければなりませんでした。
- 適切なメッセージング フレームワークの不備
これは、金融機関にとっては受け入れ難いことです。しがたって、標準規格に準拠したメッセージング システムに移行する必要がありました。
独自のプログラミングを多く必要とする非効率でスケーラビリティに欠けるインフラを管理することは、コンポーネント ベースのソリューションへの移行を難しくし、ひいては利益の減収へとつながってしまいます。
急増している顧客数を考えると、高度にスケーラブルで信頼性の高いインフラに変更することが急務でした。また、新しいインフラには、既存のモノシリックなアーキテクチャをコンポーネントに基づくアーキテクチャに変更し、システムのモジュラリティを高めることも求められました。
ソリューション
1. メッセージング基盤
FXCM 社のメッセージング フローは、ビジネス エンテティ アプローチによって構築することが適していると判断できました。ビジネス エンテティ アプローチとは、ビジネス エンテティ (ビジネス対象物) をメッセージとしてコンポーネントからコンポーネントへと配信するアプローチです。
下図は、各種のサービスおよび情報配信システム (メッセージング システム) とバックエンドの様々なアプリケーションを、Fiorano ESB を介して結合している状態を指しています。
図 1. ESB によるメッセージング基盤 |
Fiorano ESB は、既存アプリケーションをモジュラー コンセプトによって連携し、JMS (Java メッセージ サービス) に準拠したメッセージ通信によってアプリケーション間の通信を 100% 保証します。同時に、Fiorano ESB は、メッセージ配信の通信メカニズムをアプリケーションから隠蔽し、アプリケーションをメッセージ通信の制御から解放します。FXCM は、Fiorano ESB を用いて、メッセージ配信のトランスポート基盤を構築しました。
2. スケーラビリティ
Fiorano ESB 内のメッセージング バスは、ピア サーバーと呼ばれるライトウィイトなマイクロカーネルとして稼動するメッセージング サーバーによって構成されています。このピア サーバーは、世界最高レベルのメッセージ配信速度を誇る FioranoMQ をベースとしています。このため、Fiorano ESB に結合されたアプリケーション間では、JMS メッセージング ドメインに規定された配信保障、フォールトトレーランス性能などに裏打ちされた、高速な通信が実行されます。
図 2. ピア サーバーによって構成される JMS メッセージング バス |
ピア サーバーは、その個数を自由に増減することができ、負荷状況に応じたスケーラビリティをもたらしまします。
3. コンポーネント ベース アーキテクチャによるモジュラリティ
Fiorano ESB 上では、コンポーネント アーキテクチャに基づいたビジネス プロセスを構築できます。個々のコンポーネントは、JMS メッセージング バスを介してイベント ドリブンなメッセージ交換を行うことで、ビジネス プロセスのフロー制御を実行しています。アプリケーションは、コンポーネントから呼び出されることで、ビジネス プロセスに参加します。
図 3. コンポーネント アーキテクチャに基づくビジネス プロセス |
効果
FXCM のソリューションは、Fiorano ESB のコンポーネント アーキテクチャの利点をフルに引き出すよう設計されています。既存のアプリケーションを作り変えることなく、コンポーネント ベースの新たなビジネス プロセスから利用できるようにすることで、従来のトレーディング システムをモノシリックなシステムから、柔軟性に富むアジャイルなシステムへと変革しました。
- コンポーネント アーキテクチャによるモジュラリティの確保
Fiorano ESB のコンポーネント アーキテクチャは、バックエンド アプリケーションや顧客サービス アプリケーションを “疎結合” したビジネス プロセスを実現します。”疎結合” がもたらす最も重要な利点は、新たなアプリケーションや新規サービスの導入が、既存のアプリケーションに影響を及ぼさない点にあります。新規アプリケーションの導入や、既存アプリケーションの変更を、他のアプリケーションを稼動させた状態で行えることを意味します。
マーケットや顧客の要求に迅速に対応してシステムを変更できるアジャイルな環境を、FXCM は手に入れることができました。
- 柔軟なスケーラビリティ
Fiorano ESB のメッセージング バスは、その数や配置場所を柔軟に変更できるピア サーバーによって構成されています。このピア サーバーの増設や撤去は、ESB 全体を停止することなく実施でき、また個数の制限もありません。
FXCM 社は、顧客数やサービスの増減に柔軟に応じることができる、ほとんど無制限なスケーラビリティを持つプラットフォームを手中にしました。
- イベントに基づくエラー トラッキング
Fiorano ESB では、ビジネス コンポーネントのリアルタイムなモニタリングとデバッグが可能です。このリアルタイム モニタリング機能には、エラー レポートの自動化機能や警告、エラー通知の機能も含まれています。
- サービス開発期間の大幅な短縮
Fiorano ESB には、プリビルトされたコンポーネントが 60 種類以上用意されています。ビジネス プロセス構築ツールは、これらのコンポーネントをマウス操作で自由に組合わせてプロセス フローを構築します。ビジネス プロセスおよびコンポーネントを稼動させるためには、ユーザー環境に適合させるためのプロパティ設定だけですみ、プログラミング作業を必要としません。
FXCM 社は、新たなサービスの構築やバックエンドとの連携を、今までに類をみない短期間で実施できるようになりました。
他社の複雑で高価な製品と異なり、Fiorano ESB の優れたアーキテクチャ (ピアー サーバーと JMS に完全に準拠したメッセージング) はインテグレーションをシンプルなものとし、プロジェクトの生産性を高めます。FXCM は、Fiorano ESB によって、売上げの増大、高い生産性、飛躍的な ROI の向上を直ちに得ることができました。
Fiorano を選択したもう一つの理由
Fiorano ESB は、標準規格に準拠したインタフェースを持つコンポーネントによってビジネス プロセスを構築するというコンセプトに基づいています。また、Fiorano ESB に同梱されているプリビルト コンポーネントは、ビジネス プロセスにおいて必要となるデータ処理をほとんどすべてカバーしています。また、既存アプリケーション内にあるビジネス ロジックを、アプリケーションを作り変えることなく利用するためのコンポーネントも備えています。Fiorano ESB のコンポーネント アーキテクチャは、ビジネス プロセスの構築を飛躍的に効率的なものとし、また、そのメンテナンスを容易なものとしています。
このことが、Fiorano ESB のメッセージング基盤やスケーラビリティの優秀さに加えて、FXCM が選択した理由の一つになっています。
FXCM 社の Vladimir Panasenko 氏 (チーフ アーキテクト) は、『Fiorano ESB によって、ソフトウェア アーキテクト、開発エンジニア、運用管理者の間の役割が明確に区別できるようになり、ソフトウェア開発のライフサイクル全体の効率性が向上しました。 Fiorano ESB 上に展開される大きな粒度によるコンポーネントによってビジネス プロセスを構築するという方法は、設計者がビジネス ロジックに専念できる優れたものです。』と、述べています。
Panasenko 氏はさらに、『各企業のソフトウェア アーキテクトは、全社的なシステムをいくつかのビジネス プロセスにブレイク ダウンし、各々のビジネス プロセスを疎結合された粒度の大きなコンポーネントにさらにブレイク ダウンしていくことの利点を充分に理解しています。分散されたアプリケーションをカバーするビジネス プロセスを Fiorano ESB のオーケストレーション ツールを用いて開発、運用すると、各コンポーネントの置き換えやロギング / モニタリングの切り替えがダイナミックに (運用を停止することなく) 行えるようになります。また、イベントの割り込み機能を利用することで、デバッグ作業の効率が飛躍的に向上します。』と、述べています。
参考資料
機能説明のページ
ソリューション紹介のページ
金融サービス
アプリケーション連携 (EAI)
ホワイトペーパー
『 メッセージ ドリブン SOA 』 (資料ダウンロードページへ)
『 ESB 製品選定のポイント 』 (資料ダウンロードページへ)
|