消息队列之kafka(消费语义)
:Proudcer产生数据的时候,已经写入在broker中,但是由于broker的网络异常,没有返回ACK,这时Producer,认为数据没有写入成功,此时producer会再次写入,相当于一条数据,被写入了多次。:producer在产生数据的时候,有可能写数据的时候不成功,此时broker就跳过这个消息,那么这条数据就会丢失,导致consumer无法消费。
at last once:可以先读取数据,处理数据,最后记录offset,当然如果在记录offset之前就crash,新的consumer会重复的来消费这条数据,导致了”最少一次“at most once:可以先读取数据,然后记录offset,最后在处理数据,这个方式,就有可能在offset后,还没有及时的处理数据,就crash了,导致了新的consumer继续从这个offset处理,那么刚刚还没来得及处理的数据,就永远不会被处理,导致了”最多消费一次“exactly once:可以通过将提交分成两个阶段来解决:保存了offset后提交一次,消息处理成功后,再提交一次。
A:Producer 端写入数据的时候保证幂等性操作:幂等性:对于同一个数据无论操作多少次都只写入一条数据,如果重复写入,则执行不成功B:broker写入数据的时候,保证原子性操作, 要么写入成功,要么写入失败。(不成功不断进行重试)球速体育官方网站
您可能感兴趣的文章
- 10-27将网络操作系统变成现实 ajaxWindows正式上线
- 10-27AJAX的应用
- 10-27jquery-django项目的csrf保护导致ajax请求返回403
- 10-27Ajax的使用方法和原理讲解
- 10-27总结Ajax的用法
- 10-26Spring Cloud + Vue 前后端分离
- 10-26vue中怎么引入layui
- 10-26vue怎么动态引入img标签
- 10-26Web前端:确保项目成功的10大Web开发框架
- 10-26vue监听滚动事件如何实现滚动监听
阅读排行
推荐教程
- 10-12期货投资新手如何入门?
- 09-03明日之后第三季新手任务怎么过 第三季教程剧情彩蛋详解
- 09-19iPhone 16最大的卖点竟是苹果花钱买来的?!
- 10-09XTools十周年十大里程碑事件
- 07-18P2P到底是什么意思
- 09-14Java EE轻量级框架整合开发教与学(教案+大纲+源码+PPT+视频彭之军)
- 09-25世界这么大 为嘛这的西瓜能过生日
- 10-09ajax基本用法
- 08-0690%中国人都会读错的5个汽车名词你能读对几个?
- 08-11AJAX新技术借力Web应用增长 催生在线版Office