当社のシステムアーキテクチャ

金融市場向けのクラウドネイティブ原則と超低遅延性能

アーキテクチャを見る

アーキテクチャ概要

Touch-Fire のシステムアーキテクチャは、最新のクラウドネイティブ原則と金融取引システムに求められる厳格な性能要件とのバランスを慎重に設計したものです。スケーラビリティとレジリエンスを提供しつつ、高頻度取引に不可欠な超低遅延を維持するハイブリッド型アプローチを実現しました。

アーキテクチャ図

主要な設計原則

  • パフォーマンス重視: 重要な取引経路における超低遅延最適化
  • 分散処理: イベント駆動型通信によるマイクロサービス
  • スケーラブルな構成要素: 負荷に応じて独立して拡張可能
  • 高いレジリエンス: システム全体で単一障害点を排除
  • 包括的な可観測性: リアルタイムの監視と診断

アーキテクチャ変革

2019年から2022年にかけて、Touch-Fire はクラウドネイティブ原則を取り入れつつ、業界最高水準の低遅延を維持するために大規模なアーキテクチャ変革を行いました。

この変革は、高頻度取引顧客とリテール向け暗号資産取引プラットフォームを同時に支える必要性から始まりました。1時間に数千件の口座開設リクエストや数万人規模の価格配信ニーズに対応するためです。

その結果、現代的クラウドアーキテクチャの信頼性・スケーラビリティと、金融市場に求められる性能特性を兼ね備えたベスト・オブ・ボースワールドのソリューションを実現しました。

クラウド移行の歩みを見る

データベースアーキテクチャ

モノリシックDBからの脱却

アーキテクチャ変革の重要な一環は、モノリシックDBを用途別の専用データストアへ分割することでした:

  • インメモリ分散DB: レイテンシに敏感なサービスのリアルタイムメタデータ用
  • PostgreSQL: 設定・取引管理・レポート用
  • InfluxDB 時系列DB: リアルタイムOHLC生成やマーケットデータ用

この手法により、開発生産性、システムの拡張性、運用の柔軟性が大幅に向上し、高価な商用DBへの依存を削減しました。

データベースアーキテクチャ

デジタルツイン可観測性

当社のシステム監視はデジタルツインに基づき、OpenTelemetry標準、サービスメッシュ統合、コンポーネントの自己登録を利用しています:

デジタルツイン可観測性
  • 包括的モニタリング: システム全体をリアルタイムで可視化
  • 統合管理コンソール: アプリとインフラの統合制御
  • 集中ログ: 高度な検索と相関分析
  • 分散トレーシング: サービス横断のトランザクション可視化
  • 自動フェイルオーバー: デジタルツイン状態に基づく即時切替

このアプローチにより、システム動作の前例のない可視性が得られ、迅速な問題診断、性能最適化、自動復旧が可能となります。

時間管理とスケジューリング

金融市場は複数のタイムゾーン・カレンダー・セッション形態で運営されます。当社アーキテクチャには高度な時間管理機能が含まれています:

複数カレンダー

異なる休日カレンダーで運営される取引所をサポート。自動的なセッション管理とスケジュール調整を実現。

複数タイムゾーン

世界各地域の市場に対応。自動DST処理と時差変換をサポート。

複数セッション形式

日次セッション(先物)、日中セッション(株式)、週次セッション(暗号/FX)を適切に処理。

「タイムトラベル」機能

将来カレンダーのテストや過去処理の再実行をサポート。完全な監査証跡を実現する時系列DB設計。

バッチ処理からストリーム処理へ

継続的イベント処理

従来の金融システムは日次バッチ処理に大きく依存していました。当社はストリーム処理へ移行し、次の利点を実現します:

  • リアルタイム更新: 即時のポジション・リスク計算
  • 高ボリューム対応: 毎秒数百万イベントの処理が可能
  • システム全体イベント: 証拠金警告などの状態変化を即時伝達
  • 処理時間短縮: 夜間バッチ制約の排除
  • 即時アラート: 重要条件をリアルタイム通知

この移行は、ポジション・リスク・市場状況を即時に把握する必要のある高頻度取引顧客に特に重要です。

ストリーム処理

DevOps と継続的デリバリー

当社のアーキテクチャ変革では、開発・デプロイ手法も大きく進化しました:

最新の開発手法

  • シフトレフトテスト: 開発初期からテストを統合
  • BDD設計: テスト可能なシナリオで要件を表現
  • 包括的モック: 外部依存をすべてテストで再現可能
  • 自動セキュリティスキャン: SAST/DAST を CI/CD に統合
  • 構造化された依存管理: バージョン管理されたライブラリとフレームワーク
  • コンテナデプロイ: 全工程で一貫した実行環境
  • 自動コンフィグ: 環境別設定をコードで管理

これらの実践により、要件から本番まで完全なトレーサビリティを保ちつつ、品質の一貫性・迅速な提供・安全なリリースを実現します。

アーキテクチャ各要素の詳細

金融ソリューションを支える各アーキテクチャ要素については、テクノロジーページをご覧ください。

テクノロジーを見る