教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

Kafka怎样实现生产者幂等性?

更新时间:2021年12月06日16时03分 来源:传智教育 浏览次数:

好口碑IT培训

什么是幂等性?用http举例来说,一次或多次请求,得到地响应是一致的(网络超时等问题除外)就是幂等性,换句话说,就是执行多次操作与执行一次操作的影响是一样的。

如果,某个系统是不具备幂等性的,如果用户重复提交了某个表格,就可能会造成不良影响。例如:用户在浏览器上点击了多次提交订单按钮,会在后台生成多个一模一样的订单。

Kafka在生产者生产消息时,如果出现retry时,有可能会一条消息被发送了多次,如果Kafka不具备幂等性的,就有可能会在partition中保存多条一模一样的消息。

配置幂等性:props.put("enable.idempotence",true);
幂等性的原理:

为了实现生产者的幂等性,Kafka引入了 Producer ID(PID)和 Sequence Number的概念。

1.D:每个Producer在初始化时,都会分配一个唯一的PID,这个PID对用户来说,是透明的。

2.equence Number:针对每个生产者(对应PID)发送到指定主题分区的消息都对应一个从0开始递增的Sequence Number。




猜你喜欢:

怎样一键启动或关闭Kafka?有快捷的方法吗?

Kafka基准测试怎样进行?

如果leader崩溃,Kafka怎样重新选举?

kafka自定义拦截器实例教程[传智教育]

传智教育Python+大数据开发培训

0 分享到:
和我们在线交谈!