消息介绍(RabbitMQ与kafka)

RabbitMQ(Erlang语言):amqp协议通信,生产者和消费者不受语言限制。队列

生产者(Producer):新建连接->建通道(channel)->声明消息队列(队列名称、默认交换器exchange、queueDeclare)->通道发消息(publish)->关通道->关连接
消费者(Consumer):新建连接->建通道(channel)->声明消息队列(队列名称、默认交换器exchange、queueDeclare)-> 重写DefaultConsumer的handleDelivery方法接收消息(通道绑定consumer)

4种交换器:direct(routingkey、bindingkey)、topic、fanout、headers

Kafka:topic,键值保存数据(apache)
配合ZooKeeper分布式
生产者:定义topic的名字,map的生产者,send发送
消费者:可以订阅subscribe多个topic,通过poll拉取消息

消费者组:分到各个实例(负载),如果同组消费者,一条消息只会有组里的一个消费者接收到,祖内其他消费者收不到;如果属于不同组消费者,不同组一个实例都可以接收到并消费,广播事件。

posted @ 2019-03-10 21:22  lyx_me  阅读(226)  评论(0编辑  收藏  举报