11章メッセージ交換
この章では、ブローカーベースのメッセージ交換システムでのAPI(以降ではブローカーベースのAPIと呼ぶ)について説明する。メッセージ交換に関するパターンに慣れ親しみ、それらを実装し文書化するために必要なスキルを身につけることを目的とする。動作環境としてはRabbitMQというメッセージブローカーを利用する。
過去数十年の間に、メッセージ交換に基づくアプリケーションアーキテクチャーが複数提案されてきた。2000年代初期にはサービス指向アーキテクチャー(SOA)が提唱され、ソフトウェアアプリケーションがエンタープライズサービスバス(ESB)の上でメッセージを交換できるようになった。2000年代半ばには、イベント駆動型アーキテクチャー(EDA)に注目が集まった。ここでは、イベントを契機としてメッセージが生成され、これらのメッセージへの応答という形でシステム間の通信が実現される。ESBとEDAはどちらも、アプリケーション間でデータを受け渡すための構成要素としてメッセージ指向ミドルウェア(MOM)を利用している。2010年代にはマイクロサービスのアーキテクチャーが普及したが、ここでもMOMは引き続き利用されている。ActiveMQ(https://activemq.apache.org)、Amazon SQS(https://oreil.ly/DeI6R)、Azure Service Bus(https://oreil.ly/U0743)、Google Cloud Pub/Sub(https://oreil.ly/QJ36Q)、Kafka(https://oreil.ly/2knCH)、RabbitMQ(https://www.rabbitmq.com)、Redis( ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access