HTML

メッセージキューシステム - HTML

メッセージキューシステムは、分散システム間の非同期通信を実現するためのミドルウェアです。高スループットなストリーミング処理、低レイテンシーのメッセージング、クラウドネイティブなマネージドサービスなど、様々な特性を持つシステムが存在します。RabbitMQ、Apache Kafka、Amazon SQS、Redis、ActiveMQ、NATS、Apache Pulsarなど、主要なメッセージキューシステムを紹介します。

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