温馨提示×

MQ消息队列发展史&MQ通用架构

MQ
小云
101
2023-10-11 10:47:11
栏目: 编程语言

MQ消息队列发展史:

  1. 早期的消息队列:早期的消息队列主要是基于主机内存的消息传递系统,它们通常用于进程间通信和数据传输。

  2. 第一代消息队列:第一代消息队列主要是基于消息传递中间件(Middleware)的架构,如IBM MQSeries和TIBCO Rendezvous等。这些系统使用了独立的消息服务器来中转和传递消息。

  3. 第二代消息队列:第二代消息队列主要是基于开源中间件的架构,如ActiveMQ和RabbitMQ等。这些系统通过网络和协议来进行消息的传递和处理。

  4. 第三代消息队列:第三代消息队列主要是基于分布式架构的消息队列系统,如Kafka和RocketMQ等。这些系统通过分布式存储和复制来实现高可用性和可扩展性。

MQ通用架构:

MQ通用架构一般包含以下几个主要组件:

  1. 生产者(Producer):负责产生和发送消息。

  2. 消费者(Consumer):负责接收和处理消息。

  3. 队列(Queue):用于存储消息的容器,生产者将消息发送到队列,消费者从队列中接收消息。

  4. 消息服务器(Message Broker):负责接收生产者发送的消息,并将其存储到队列中,同时将消息推送给消费者。

  5. 消息协议(Message Protocol):用于定义消息的格式和传输协议,常见的消息协议有AMQP(Advanced Message Queuing Protocol)、MQTT(Message Queuing Telemetry Transport)和STOMP(Simple Text Oriented Messaging Protocol)等。

  6. 路由(Routing):负责将消息从生产者路由到相应的队列或消费者。

  7. 持久化(Persistence):将消息存储到磁盘中,以避免消息丢失。

  8. 可靠性保证(Reliability Guarantee):确保消息的可靠传递和处理,如消息的重试和故障恢复机制。

  9. 监控和管理(Monitoring and Management):提供监控和管理消息队列的功能,如消息的统计、调优和故障排查等。

0