RocketMQ重试机制
重试机制触发消息发送重试机制的条件如下: 客户端消息发送请求调用失败或请求超时 网络异常造成连接失败或请求超时。 服务端节点处于重启或下线等状态造成连接失败。 服务端运行慢造成请求超时。 服务端返回失败错误码 系统逻辑错误:因运行逻辑不正确造成的错误。 系统流控错误:因容量超限造成的流控错误。 消息重试时间间隔如下: 无序消息:重试时间为阶梯时间 顺序消息:重试时间为固定时间,默认为3s RocketMQ的重试机制涉及发送端重试和消费端重试,消费端重试关联死信队列 发送端重试RocketMQ 在客户端中内置了请求重试逻辑,支持在初始化时配置消息发送最大重试次数(默认为 2 次),失败时会按照设置的重试次数重新发送。直到消息发送成功,或者达到最大重试次数时结束,并在最后一次失败后返回调用错误的响应。对于同步发送和异步发送,均支持消息发送重试。 同步发送:调用线程会一直阻塞,直到某次重试成功或最终重试失败(返回错误码或抛出异常)。 异步发送:调用线程不会阻塞,但调用结果会通过回调的形式,以异常事件或者成功事件返回。 我们也手动设置重试次数。代码示例如下: 123456p ...
初识RocketMQ
领域模型 消息由生产者初始化并发送到云消息队列 RocketMQ 版服务端。 消息按照到达云消息队列 RocketMQ 版服务端的顺序存储到主题的指定队列中。 消费者按照指定的订阅关系从云消息队列 RocketMQ 版服务端中获取消息并消费 RocketMO架构上主要分为四部分,如上图所示: Producer:消息发布的角色,支持分布式集群方式部署。Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递,投递的过程支持快速失败并且低延迟。 Consumer:消息消费的角色,支持分布式集群方式部署。支持以push推,pull拉两种模式对消息进行消费同时也支持集群方式和广播方式的消费,它提供实时消息订阅机制,可以满足大多数用户的需求。 NameServer:NameServer是一个非常简单的Topic路由注册中心,其角色类似Dubbo中的zookeeper,支持Broker的动态注册与发现。NameServer 互相独立,彼此没有通信关系,无状态。 主要包括两个功能: Broker管理,NameServer接受Broker集群的注册信息并且保存下来作 ...
链表
链表203. 移除链表元素 1设置一个虚拟头结点,使得链表中所有元素的删除操作都统一 707. 设计链表 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293class MyLinkedList {public: // 定义链表节点结构体 struct LinkedNode { int val; LinkedNode* next; LinkedNode(int val):val(val), next(nullptr){} }; // 初始化链表 MyLinkedList() { _dummyHead = new LinkedNode(0); // ...
数组
数组二分35.搜索插入位置 1二分查找 + target不在数组中, return r + 1; 34.在排序数组中查找元素的第一个和最后一个位置 123456[3,4,6] target = 2或7,{-1,-1}[3,4,6] target = 4 {1,1}[3,4,6] target = 5 {-1,-1}2个二分查找 寻找左边界和右边界寻找左边界,nums[target] == target的时候更新right寻找右边界,nums[target] == target的时候更新left 69.x 的平方根 123直接二分查找[0,x] target = x / mid 特判 x == 0 || x == 1如果没找到 target, 直接返回 r (舍弃算术平方根的小数部分) 367.有效的完全平方数 12二分查找 [0,num] target = num , 判断 mid * mid == num?注意将变量设为 long long 双指针27. 移除元素 1使用快慢指针,快指针遍历整个数组,慢指 ...
avatar
Palette
这是一个终身学习的时代
Follow Me
公告

欢迎来到「Palette」个人技术博客!🎉

本平台专注于:

  • > JAVA后端技术笔记
  • > 场景设计解决方案
  • > AI应用实践

🌟 一起钻研技术,共同进步!