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