摘要: RocketMQ使用 messageDelayLevel 可以设置延迟投递: 现在RocketMq并不支持任意时间的延时,需要设置几个固定的延时等级, 从1s到2h分别对应着等级1到18 消息消费失败会进入延时消息队列, 消息发送时间与设置的延时等级和重试次数有关 默认配置为: messageDel 阅读全文
posted @ 2021-03-30 17:55 Li&Fan 阅读(466) 评论(0) 推荐(0) 编辑
摘要: producer: **默认超时时间** /*** Timeout for sending messages.*/private int sendMsgTimeout = 3000; // 异步发送时 重试次数,默认 2 producer.setRetryTimesWhenSendAsyncFail 阅读全文
posted @ 2021-03-30 17:52 Li&Fan 阅读(360) 评论(0) 推荐(0) 编辑
摘要: Half Message: 预处理消息,当broker收到此类消息后,会存储到RMQ_SYS_TRANS_HALF_TOPIC的消息消费队列中 检查事务状态: Broker会开启一个定时任务,消费RMQ_SYS_TRANS_HALF_TOPIC队列中的消息, 每次执行任务会向消息发送者确认事务执行状 阅读全文
posted @ 2021-03-30 17:49 Li&Fan 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 分区有序: 当发送和消费参与的queue只有一个,则是全局有序 全局有序: 如果多个queue参与,则为分区有序,即相对每个queue,消息都是有序的。 概念:队列先天支持FIFO模型,单一生产和消费者下只要保证使用`MessageListenerOrderly`监听器即可 顺序消费表示消息消费的顺 阅读全文
posted @ 2021-03-30 17:45 Li&Fan 阅读(181) 评论(0) 推荐(0) 编辑
摘要: SQL表达式过滤: 消费者将收到包含TAGA或TAGB消息. 但限制是一条消息只能有一个标签,而这对于复杂的情况可能无效。在这种情况下,可以使用SQL表达式筛选出消息. 配置: 在`broker.conf `中添加配置 enablePropertyFilter = true 启动broker 加载指 阅读全文
posted @ 2021-03-30 17:40 Li&Fan 阅读(227) 评论(0) 推荐(1) 编辑
摘要: Consumer 消费者 对以上四种的模式的 消息进行消费: //官网示例 public static void main(String[] args) throws InterruptedException, MQClientException { // 实例化消费者 DefaultMQPushC 阅读全文
posted @ 2021-03-30 17:29 Li&Fan 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 发送批量消息 : 如果您每次只发送不超过4MB的消息,则很容易使用批处理,样例如下: 消息接收方式:RocketMQ(三)——————javaAPI(1.2.3.4 消息接收方式) 注意:- 批量消息要求必要具有同一topic、相同消息配置- 不支持延时消息- 建议一个批量消息最好不要超过1MB大小 阅读全文
posted @ 2021-03-30 17:27 Li&Fan 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 单向发送消息: 这种方式主要用在不特别关心发送结果的场景,例如日志发送。(耗时非常短,一般在微秒级别) 消息接收方式:RocketMQ(三)——————javaAPI(1.2.3.4 消息接收方式) //官网示例 public static void main(String[] args) thro 阅读全文
posted @ 2021-03-30 17:26 Li&Fan 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 异步消息 : 想要快速发送消息,又不想丢失的时候可以使用异步消息。 消息接收方式:RocketMQ(三)——————javaAPI(1.2.3.4 消息接收方式) //官网示例 public static void main(String[] args) throws Exception { // 阅读全文
posted @ 2021-03-30 17:23 Li&Fan 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 同步消息: 消息发送中进入同步等待状态,可以保证消息投递一定到达: 消息接收方式:RocketMQ(三)——————javaAPI(1.2.3.4 消息接收方式) //官网示例 public static void main(String[] args) throws Exception { // 阅读全文
posted @ 2021-03-30 17:22 Li&Fan 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 消息 message: 消息是传递的信息。消息必须有一个主题,可以理解为你写信事邮寄的地址。消息也可能有一个标签选项是额外的键值对。 例如,你可能发送一条消息时设置一个key标记,并通过这个key在broker中筛选这条消息,用来处理特定的业务。 Message message1 = new Mes 阅读全文
posted @ 2021-03-30 17:17 Li&Fan 阅读(877) 评论(0) 推荐(0) 编辑
摘要: 单体: producer: - 消息的生产者 通过集群中的其中一个节点(随机选择)建立长连接,获得Topic的路由信息,包括Topic下面有哪些Queue,这些Queue分布在哪些Broker上等 生产者发送业务中产生的消息到broker,rocketMQ提供了多种发送方式:同步,异步,单程。 接下 阅读全文
posted @ 2021-03-30 17:13 Li&Fan 阅读(176) 评论(0) 推荐(0) 编辑
摘要: Java ThreadLocal的使用: Java中的ThreadLocal类允许我们创建只能被同一个线程读写的变量。 因此,如果一段代码含有一个ThreadLocal变量的引用,即使两个线程同时执行这段代码, 它们也无法访问到对方的ThreadLocal变量。 如何创建一个ThreadLocal变 阅读全文
posted @ 2021-03-30 10:33 Li&Fan 阅读(57) 评论(0) 推荐(0) 编辑