自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (1)
  • 收藏
  • 关注

原创 6.producer思考总结

总结

2023-03-16 16:52:44 127

原创 5.13如何处理长时间没有收到响应的消息

如何处理长时间没有收到响应的消息

2023-03-16 16:45:19 294

原创 5.12生产者如何处理超时的批次

这里肯定又要想到sender线程了,因为当时做处理过程概览的时候有一个步骤六,我们一直没有去分析,这个步骤当时说是放弃超时的batch,准确来说要在这里看一下是如何处理的。再来看一下 abortExpiredBatches方法,会发现如果消息有异常了也会对内存做相应的处理。这里要去看一下maybeExpire判断超时的一个标准。最后看到了熟悉的done方法,这次会走他的另一个分支。这里最终的思想还是交给用户自己去处理。我们跟进去看一下是如何处理的。

2023-03-15 10:47:19 112

原创 5.11消息有异常如何处理

最后如果真的是有一些消息带有异常导致无法正常发送,我们也不能放任不管,这样就丢数据了,通常的做法就是在生产者代码的回调函数中捕获到这样的消息,将它存储到备用链路里面,防止丢数据。这里主要还是之前看到的Sender.java中的completeBatch方法。我们可以简单的看一下reenqueue做了什么处理。

2023-03-15 10:43:15 371

原创 5.10消息发送完成后内存如何处理

消息发送完成后内存如何处理

2023-03-14 20:02:39 48

原创 5.9producer如何处理响应消息

producer如何处理响应消息

2023-03-14 17:22:56 65

原创 5.8生产者如何处理暂存状态的响应

生产者如何处理暂存状态的响应

2023-03-13 19:34:45 37

原创 5.7producer如何处理拆包问题

producer如何处理拆包问题

2023-03-13 16:47:29 44

原创 5.6producer如何处理粘包问题

producer如何处理粘包问题

2023-03-12 18:21:28 65

原创 5.5sender线程运行流程

sender线程运行流程

2023-03-12 10:08:00 123

原创 5.4RecordAccumulator封装消息流程

RecordAccumulator封装消息流程图

2023-03-11 20:29:15 96

原创 5.3确认消息大小

确认消息大小

2023-03-10 21:38:19 50

原创 5.2分区选择

分区选择

2023-03-10 21:34:51 44

原创 5.1producer加载元数据

producer加载元数据

2023-03-09 19:42:34 92

原创 5.核心流程

核心流程入口

2023-03-09 19:27:32 66

原创 4.元数据管理

元数据管理

2023-03-08 17:18:40 90 1

原创 3.producer初始化

producer初始化

2023-03-08 16:33:28 109

原创 2.producerdemo执行流程

producerdemo执行流程

2023-03-08 16:06:14 52

原创 1.producer发送数据的总体流程

producer发送数据的总体流程

2023-03-08 15:37:47 144 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除