消息队列

一、消息队列MQ(Message Queue):

  1)消息队列是一种先进先出的数据结构;

  2)消息队列使用的“协议”不是具体的通讯协议,而是更高层次通讯模型。它定义了两个对象——发送数据的叫生产者;接收数据的叫消费者, 提供一个 SDK 让我们可以定义自己的生产者和消费者实现消息通讯而无视底层通讯协议;

  3)消息队列主要通过异步处理提高系统性能(削峰、减少响应所需时间);

  4)降低系统耦合性;

二、消息列队分类:

1、有Broker的MQ:

  一台服务器作为 Broker,所有的消息都通过它中转。生产者把消息发送给它就结束自己的任务了,Broker 则把消息主动推送给消费者(或者消费者主动轮询);

  •   点对点(point-to-point,简称PTP)Queue消息传递模型;
  •   发布/订阅(publish/subscribe,简称pub/sub)Topic消息传递模型;

   1)重 Topic:kafka、JMS(ActiveMQ);

    

  2)轻 Topic:RabbitMQ(或者说是 AMQP)

    

2、无Broker的MQ:

  无 Broker 的 MQ 的代表是 ZeroMQ。

    

 

posted @ 2019-08-12 17:22  开拖拉机的拉风少年  阅读(161)  评论(0编辑  收藏  举报