こんにちは! 今回は、イベント駆動型アーキテクチャをテーマに、システム連携をより効率的に、そしてセキュアに行う方法について解説していきます。
特に、大規模なシステムを運用している企業にとって、イベント駆動型アーキテクチャは魅力的な選択肢となりつつあります。
本記事では、ユナイテッド航空の事例を交えながら、最新のイベント駆動型アーキテクチャの利点や考慮すべきポイントを、現役エンジニアが解説するような親しみやすい形で紹介していきます。
昨今、ビジネス環境はめまぐるしく変化し、企業は迅速かつ柔軟なシステム開発が求められています。
従来のモノリシックなアーキテクチャでは、システム全体が密結合しているため、一部の変更が全体に影響を及ぼしやすく、開発スピードや柔軟性に課題がありました。
そこで注目されているのが、イベント駆動型アーキテクチャです。
イベント駆動型アーキテクチャでは、システムを独立性の高い小さなコンポーネント(マイクロサービス)に分割し、イベントを介して非同期に連携させます。
このアプローチにより、開発スピードの向上、柔軟性の向上、障害の影響範囲の縮小といったメリットを実現できます。
イベント駆動型アーキテクチャは、イベントプロデューサー、イベントブローカー、イベントコンシューマーの3つの主要なコンポーネントで構成されます。
コンポーネント | 説明 |
---|---|
イベントプロデューサー | イベントを生成してイベントブローカーに送信する |
イベントブローカー | イベントを処理・保存・ルーティングする |
イベントコンシューマー | イベントブローカーからイベントを受け取り、処理を実行する |
例えば、ECサイトで注文が発生した場合、注文システムがイベントプロデューサーとなり、「注文作成」イベントをイベントブローカーに送信します。
在庫管理システムや配送システムといったイベントコンシューマーは、このイベントを受け取り、それぞれの処理を実行します。
ユナイテッド航空は、大規模なメインフレームシステムからイベント駆動型システムへの移行を進めています。
その背景には、メインフレームシステムの複雑化や運用コストの増加、そしてデジタル化への対応といった課題がありました。
ユナイテッド航空では、Amazon MSK(Managed Streaming for Apache Kafka)をイベントブローカーとして採用しています。
MSKは、オープンソースのメッセージキューシステムであるApache Kafkaをマネージドサービスとして提供するもので、高いスケーラビリティと可用性を備えています。
ユナイテッド航空は、MSKクラスタへのアクセス制御やデータ保護、そして障害発生時のフェイルオーバーといったガバナンスとレジリエンスの確保にも注力しています。
対策 | 説明 |
---|---|
マイクロアカウントアーキテクチャ | 各アプリケーションチームに独立したAWSアカウントを提供することで、セキュリティ強化とブラストラディウスの抑制を実現 |
MSKクラスタポリシー | 特定のVPCからのみMSKクラスタへの接続を許可することで、アクセス制御を強化 |
MSKレプリケータ | プライベートリンク経由で別のリージョンにイベントを複製し、リージョン障害発生時のRTOを短縮 |
サーバレスによるフェイルオーバー自動化 | AWS LambdaやStep Functionsなどのサーバレスサービスを活用し、フェイルオーバープロセスを自動化 |
イベント駆動型アーキテクチャでは、複数のコンポーネント間でデータがやり取りされるため、データ保護の重要性が高まります。
ユナイテッド航空は、Amazon KMS(Key Management Service)を活用し、以下のような対策を実施しています。
対策 | 説明 |
---|---|
HTTPS通信 | コンポーネント間の通信をTLS 1.2以上で暗号化 |
サーバーサイド暗号化 | Amazon SQSやAmazon SNSなどのサービスで、保存データを自動的に暗号化 |
クライアントサイド暗号化 | 機密性の高いフィールドをクライアントサイドで暗号化し、必要なコンポーネントのみが復号できるように設定 |
今回は、イベント駆動型アーキテクチャの概要、ユナイテッド航空のメインフレームモダナイゼーションの事例、そしてイベント駆動型アーキテクチャにおけるデータ保護について解説しました。
イベント駆動型アーキテクチャは、現代のビジネス環境において、システム連携をより効率的かつセキュアに行うための強力な手段となります。
AWSでは、Amazon MSKやAmazon KMSなど、イベント駆動型アーキテクチャを構築・運用するための豊富なサービスを提供しています。これらのサービスを活用することで、開発スピードと柔軟性を向上させながら、堅牢なシステムを構築することができます。
AWSモダナイズ開発、データ分析基盤構築とデータ活用支援、基幹業務システムのUI.UX刷新はお気軽にお問い合わせください。
スモールスタート開発支援、サーバーレス・NoSQLのことなら
ラーゲイトまでご相談ください
低コスト、サーバーレスの
モダナイズ開発をご検討なら
下請け対応可能
Sler企業様からの依頼も歓迎