YAML

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

メッセージキューシステムは、分散システム間の非同期通信を実現するためのミドルウェアです。高スループットなストリーミング処理、低レイテンシーのメッセージング、クラウドネイティブなマネージドサービスなど、様々な特性を持つシステムが存在します。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"