MQ消息队列。
目前市面上流行的MQ有:RocketMQ、kafka、RabbitMQ、ActiveMQ
比较一下这几个消息队列
一般消息队列的作用和使用场景是:
1.解耦。(本来A要调很多接口,现在A直接把数据放入MQ,下游服务需要自取)
2.最终一致性
3.广播
4.错峰与流控
吞吐量方面,ActiveMQ和RabbitMQ吞吐量都小,不适合大规模吞吐量使用。
追求高吞吐量可以用kafka,大公司首选。
追求高可靠,交易等场景可以用。
小公司可以用RabbitMQ,不好做二次开发,但是社区活跃,使用体验会好些。
RocketMQ:
重要的组成部分:NameServer、Broker、Producer、Consumer
NameServer:服务器端
Broker:代理服务器,存放消息负责转发的模块。
Producer:生产者
Consumer:消费者
消费者Group和生产者Group每隔30s向服务端同步一次Topic(一类消息的集合)
Topic是进行消息订阅的基本单元,订阅就是去订阅一个主题,一个主题下包含多条消息。
消费者从Broker拉取消息消费,生产者发送消息到Broker。
消费的方式分两种:一种消费者自己去拉取,一种是Broker推动给消费者。
消费者组和生产者组的消费和生产的逻辑和数据一致。消费和生产是按组的概念,这个组是一个整体。
消费模式:
1.集群消费:消费者组平摊消息
2.广播消费:消费者组每个单位都接受所有消息
3.普通顺序消息。消费者通过同一个消费队列收到的消息是有顺序的,不同消息队列收到的消息则可能是无顺序的
4.严格顺序消息。消费者收到的所有消息均是有顺序的
标签:消费,乔亚,消费者,--,Day06,Broker,队列,MQ,消息 From: https://www.cnblogs.com/dwj-ngu/p/17087863.html