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"
    ]
  }
]