イベントドリブン型システム、マイクロサービスと Kafka ストリーミング
今日のソフトウェアには、データセットの大規模化、地理的な差異、複雑な企業構造といった要素が影響し、変化に直面しても迅速かつ機敏に対応できることが求められています。
サービス指向 (SOA) やイベントドリブン型アーキテクチャ (EDA) などの実証済みのアプローチに、マイクロサービス、リアクティブアーキテクチャ、DevOps、ストリーム処理などの新たな手法が登場しています。こうしたパターンの大半は単体でも有用ですが、この実用的な電子ブックで紹介するように、一緒に適用することでさらに包括的で説得力のあるアプローチを実現できます。
この電子ブックでは、Apache Kafka® などのサービスベースのアーキテクチャやストリーミング処理ツールをビジネスに不可欠なシステムの構築に役立てる方法を紐解いていきます。以下のテーマについて説明します。
- イベントドリブン型アーキテクチャの仕組み
- イベントドリブン型システムの利点 : EDA、SOA、リアクティブアーキテクチャ
- リアクティブストリーミングが複雑かつ最新のユースケースで要求/応答ベースのアーキテクチャに勝る理由
- Kafka などの再生可能なログがマイクロサービス通信と共有データセットの双方のバックボーンとなる理由
- イベントコラボレーションとイベントソーシングパターンが機能的なイベントドリブン型プログラミングで安全性と回復力を向上させる方法
- Apache Kafka などのデータストリーミングプラットフォームが複雑なイベント処理にもたらす利点
- イベントソーシング、CQRS、分散システムなどのサービス指向アーキテクチャ内の基盤技術
- イベントソーシングや CQRS パターンの適用方法とマイクロサービスや SOA を使った複数チーム対応システムの構築方法
- 「インサイドアウトデータベース」などのパターンや「信頼できる唯一の情報源」としてのイベントストリームの使用方法
- 再生可能なログと Kafka の Streams API によるイベントドリブンとリクエストドリブンのインターフェイスを融合したサービスエコシステムの構築
- 個々のチームにとどまらず、データストリームを信頼できる情報源として使用することで、より大規模な部門と全社規模のアーキテクチャに拡張する方法