rocketmqrocket class是什么意思

rocketmq  时间:2021-08-09  阅读:()

rocketmq producer 分批数据怎么发同一个

rocketmq的顺序消息需要满足2点: 1.Producer端保证发送消息有序,且发送到同一个队列。

2.consumer端保证消费同一个队列。

先看个例子,代码版本跟前面的一样。

Producer类

java rocketmq 怎么消费

争议一、三种消费 :1.普通消费 2. 顺序消费 3.事务消费 1.1 顺序消费:在网购的时候,我们需要下单,那么下单需要假如有三个顺序,第一、创建订单 ,第二:订单付款,第三:订单完成。

也就是这个三个环节要有顺序,这个订单才有意义。

RocketMQ可以保证顺序消费,他的实现是生产者(一个生产者可以对多个主题去发送消息)将这个三个消息放ic(一ic默认有4个队列)的一个队列里面,单机支持上万个持久化队列,消费端去消费的时候也是只能有一个Consumer去取得这个队列里面的数据,然后顺序消费。

单个节点(Producer端1个、Consumer端1个) Producer端 package order; import java.util.List; .alibaba.rocketmq.client.exception.MQBrokerException; .alibaba.rocketmq.client.exception.MQClientException; .alibaba.rocketmq.client.producer.DefaultMQProducer; .alibaba.rocketmq.client.producer.MessageQueueSelector; .alibaba.rocketmq.client.producer.SendResult; mon.message.Message; mon.message.MessageQueue; .alibaba.rocketmq.remoting.exception.RemotingException; /** * Producer,发送顺序消息 */ public class Producer { public static void main(String[] args) { try { DefaultMQProducer producer = new DefaultMQProducer("order_Producer"); producer.setNamesrvAddr("192.168.100.145:9876;192.168.100.146:9876;192.168.100.149:9876;192.168.100.239:9876"); producer.start(); // String[] tags = new String[] { "TagA", "TagB", "TagC", "TagD", // "TagE" }; for (int i = 1; i <= 5; i++) { Message msg = new Message("TopicOrderTest", "order_1", "KEY" + i, ("order_1 " + i).getBytes()); SendResult sendResult = producer.send(msg, new MessageQueueSelector() { public MessageQueue select(List mqs, Message msg, Object arg) { Integer id = (Integer) arg; int index = id % mqs.size(); return mqs.get(index); } }, 0); System.out.println(sendResult); } producer.shutdown(); } catch (MQClientException e) { e.printStackTrace(); } catch (RemotingException e) { e.printStackTrace(); } catch (MQBrokerException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } } } Consumer端代码 package order; import java.util.List; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicLong; .alibaba.rocketmq.client.consumer.DefaultMQPushConsumer; .alibaba.rocketmq.client.consumer.listener.ConsumeOrderlyContext; .alibaba.rocketmq.client.consumer.listener.ConsumeOrderlyStatus; .alibaba.rocketmq.client.consumer.listener.MessageListenerOrderly; .alibaba.rocketmq.client.exception.MQClientException; mon.consumer.ConsumeFromWhere; mon.message.MessageExt; /** * 顺序消息消费,带事务方式(应用可控制Offset什么时候提交) */ public class Consumer1 { public static void main(String[] args) throws MQClientException { DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("order_Consumer"); consumer.setNamesrvAddr("192.168.100.145:9876;192.168.100.146:9876;192.168.100.149:9876;192.168.100.239:9876"); /** * 设置Consumer第一次启动是从队列头部开始消费还是队列尾部开始消费 * 如果非第一次启动,那么按照上次消费的位置继续消费 */ consumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_FIRST_OFFSET); consumer.subscribe("TopicOrderTest", "*"); consumer.registerMessageListener(new MessageListenerOrderly() { AtomicLong consumeTimes = new AtomicLong(0); public ConsumeOrderlyStatus consumeMessage(List msgs, ConsumeOrderlyContext context) { // 设置自动提交 context.setAutoCommit(true); for (MessageExt msg : msgs) { System.out.println(msg + ",内容:" + new String(msg.getBody())); } try { TimeUnit.SECONDS.sleep(5L); } catch (InterruptedException e) { e.printStackTrace(); } ; return ConsumeOrderlyStatus.SUCCESS; } }); consumer.start(); System.out.println("Consumer1 Started."); } }

rocketmq group不同为什么能消费

a: 查看具体命令的使用 : sh mqadmin b: sh mqadmin help 命令名称 例如,查看 updateTopic 的使用 sh mqadmin help updateTopic 2. 关闭nameserver和所有的broker: 进入到bin下: sh mqshutdown namesrv sh mqshutdown broker 3. 查看所有消费组group: sh mqadmin consumerProgress -n 192.168.1.23:9876 4. 查看指定消费组下的所ic数据堆积情况: sh mqadmin consumerProgress -n 192.168.1.23:9876 -g warning-group 5. 查看所ic :

rocket class是什么意思

rocket class 火箭班; 火箭类 双语例句 With a liquid rocket engine ( LRE) historical test data, this algorithm is validated. These results show that there is only one class when the algorithm is used to healthy turbopump vibration data, and the distance between the neighboring neuron is less than 0.1; 通过某型液体火箭发动机历史试车数据的验证,结果表明,健康涡轮泵数据利用该算法聚类时仅存在一个类别,相邻神经元距离小于0.1;

Virmach($7.2/年)特价机器发放

在八月份的时候有分享到 Virmach 暑期的促销活动有低至年付12美元的便宜VPS主机,这不开学季商家又发布五款年付VPS主机方案,而且是有可以选择七个数据中心。如果我们有需要低价年付便宜VPS主机的可以选择,且最低年付7.2美元(这款目前已经缺货)。这里需要注意的,这次发布的几款便宜年付方案,会在2021年9月30日或者2022年4月39日,分两个时间段会将INTEL CPU迁移至AMD CP...

RackNerd 黑色星期五5款年付套餐

RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...

pacificrack:$12/年-1G内存/1核/20gSSD/500g流量/1Gbps带宽

pacificrack在最新的7月促销里面增加了2个更加便宜的,一个月付1.5美元,一个年付12美元,带宽都是1Gbps。整个系列都是PR-M,也就是魔方的后台管理。2G内存起步的支持Windows 7、10、Server 2003\2008\2012\2016\2019以及常规版本的Linux!官方网站:https://pacificrack.com支持PayPal、支付宝等方式付款7月秒杀VP...

rocketmq为你推荐
一致性车辆一致性证书重要吗?笛卡尔乘积离散数学的集合问题。。 第一个笛卡尔的乘积:A={1,2},B={a,b},那么AXB^2是什么blastpblast 和bomb的区别局域网ip扫描工具如何扫描局域网使用的设备蓝牙开发iOS的蓝牙开发跟Android有什么不同赵锡成福茂航运公司的英文是什么?visa信用卡卡号信用卡卡号是多少位数地微信收费微信提现收费是怎么计算的 从什么时候开始收费spinmaster会飞的小仙女玩具什么品牌blacken曲婉婷ShineOverme中英文歌词
虚拟主机排名 lamp安装 a2hosting 息壤主机 好看的留言 万网优惠券 服务器架设 台湾谷歌网址 最好的空间 qq数据库下载 上海域名 dux 大容量存储器 cdn加速原理 国外免费asp空间 东莞服务器 监控服务器 免费的域名 空间申请 阵亡将士纪念日 更多