XML
メッセージキューシステム - XML
メッセージキューシステムは、分散システム間の非同期通信を実現するためのミドルウェアです。高スループットなストリーミング処理、低レイテンシーのメッセージング、クラウドネイティブなマネージドサービスなど、様々な特性を持つシステムが存在します。RabbitMQ、Apache Kafka、Amazon SQS、Redis、ActiveMQ、NATS、Apache Pulsarなど、主要なメッセージキューシステムを紹介します。
メッセージキュー
分散システム
非同期通信
ミドルウェア
イベントストリーミング
マイクロサービス
<?xml version="1.0" encoding="UTF-8"?>
<items>
<item>
<code>01</code>
<slug>rabbitmq</slug>
<name>RabbitMQ</name>
<description>柔軟なルーティングを持つオープンソースのメッセージブローカーです。</description>
<cloudNative>false</cloudNative>
<deployment>["self-hosted","cloud-managed"]</deployment>
<latency>1-20ms</latency>
<messageReplay>false</messageReplay>
<persistence>true</persistence>
<protocols>["AMQP","MQTT","STOMP"]</protocols>
<throughput>~1M messages/sec</throughput>
<type>message-broker</type>
</item>
<item>
<code>02</code>
<slug>apache-kafka</slug>
<name>Apache Kafka</name>
<description>高スループットな分散イベントストリーミングプラットフォームです。</description>
<cloudNative>false</cloudNative>
<deployment>["self-hosted","managed"]</deployment>
<latency>2-10ms</latency>
<messageReplay>true</messageReplay>
<persistence>true</persistence>
<protocols>["Kafka Protocol"]</protocols>
<throughput>10M+ messages/sec</throughput>
<type>event-streaming</type>
</item>
<item>
<code>03</code>
<slug>amazon-sqs</slug>
<name>Amazon SQS</name>
<description>AWSが提供するフルマネージドのサーバーレスメッセージキューサービスです。</description>
<cloudNative>true</cloudNative>
<deployment>["managed"]</deployment>
<latency>10-100ms</latency>
<messageReplay>false</messageReplay>
<persistence>true</persistence>
<protocols>["AWS API"]</protocols>
<throughput>~300K messages/sec</throughput>
<type>managed-queue</type>
</item>
<item>
<code>04</code>
<slug>redis-streams</slug>
<name>Redis Streams</name>
<description>インメモリデータストアのRedisが提供するストリーミング機能です。</description>
<cloudNative>false</cloudNative>
<deployment>["self-hosted","managed"]</deployment>
<latency>Ultra Low</latency>
<messageReplay>true</messageReplay>
<persistence>optional</persistence>
<protocols>["Redis Protocol"]</protocols>
<throughput>Very High</throughput>
<type>in-memory-stream</type>
</item>
<item>
<code>05</code>
<slug>apache-activemq</slug>
<name>Apache ActiveMQ</name>
<description>JMSベースの伝統的なエンタープライズメッセージブローカーです。</description>
<cloudNative>false</cloudNative>
<deployment>["self-hosted"]</deployment>
<latency>Medium</latency>
<messageReplay>false</messageReplay>
<persistence>true</persistence>
<protocols>["JMS","AMQP","MQTT","STOMP","OpenWire"]</protocols>
<throughput>Medium</throughput>
<type>message-broker</type>
</item>
<item>
<code>06</code>
<slug>nats</slug>
<name>NATS</name>
<description>クラウドネイティブな軽量メッセージングシステムです。</description>
<cloudNative>true</cloudNative>
<deployment>["self-hosted","managed"]</deployment>
<latency>Ultra Low</latency>
<messageReplay>true</messageReplay>
<persistence>optional</persistence>
<protocols>["NATS Protocol"]</protocols>
<throughput>Very High</throughput>
<type>cloud-native-messaging</type>
</item>
<item>
<code>07</code>
<slug>apache-pulsar</slug>
<name>Apache Pulsar</name>
<description>マルチテナンシーと階層型ストレージを持つ分散メッセージングシステムです。</description>
<cloudNative>true</cloudNative>
<deployment>["self-hosted","managed"]</deployment>
<latency>Low</latency>
<messageReplay>true</messageReplay>
<persistence>true</persistence>
<protocols>["Pulsar Protocol"]</protocols>
<throughput>Very High</throughput>
<type>event-streaming</type>
</item>
<item>
<code>08</code>
<slug>google-pubsub</slug>
<name>Google Cloud Pub/Sub</name>
<description>Google Cloudが提供するフルマネージドのメッセージングサービスです。</description>
<cloudNative>true</cloudNative>
<deployment>["managed"]</deployment>
<latency>Low</latency>
<messageReplay>true</messageReplay>
<persistence>true</persistence>
<protocols>["Google Cloud API"]</protocols>
<throughput>Very High</throughput>
<type>managed-queue</type>
</item>
<item>
<code>09</code>
<slug>azure-service-bus</slug>
<name>Azure Service Bus</name>
<description>Microsoft Azureが提供するエンタープライズ統合メッセージングサービスです。</description>
<cloudNative>true</cloudNative>
<deployment>["managed"]</deployment>
<latency>Low-Medium</latency>
<messageReplay>false</messageReplay>
<persistence>true</persistence>
<protocols>["AMQP","HTTP/REST","SBMP"]</protocols>
<throughput>High</throughput>
<type>managed-queue</type>
</item>
<item>
<code>10</code>
<slug>rocketmq</slug>
<name>Apache RocketMQ</name>
<description>Alibabaが開発した高可用性の分散メッセージングプラットフォームです。</description>
<cloudNative>true</cloudNative>
<deployment>["self-hosted","managed"]</deployment>
<latency>Low</latency>
<messageReplay>true</messageReplay>
<persistence>true</persistence>
<protocols>["RocketMQ Protocol"]</protocols>
<throughput>Very High</throughput>
<type>message-broker</type>
</item>
</items>