当前位置: 首页 > news >正文

网站建设外包 源代码网站之家查询

网站建设外包 源代码,网站之家查询,网络运维必备知识,北京建设部网站职称Kafka生产者幂等性/事务幂等性事务Kafka 消息交付可靠性保障: Kafka 默认是:至少一次最多一次 (at most once) : 消息可能会丢失,但绝不会被重复发送至少一次 (at least once) : 消息不会丢失,但有可能被重复发送精确一次 (exact…

Kafka生产者幂等性/事务

  • 幂等性
  • 事务

Kafka 消息交付可靠性保障:

  • Kafka 默认是:至少一次
  • 最多一次 (at most once) : 消息可能会丢失,但绝不会被重复发送
  • 至少一次 (at least once) : 消息不会丢失,但有可能被重复发送
  • 精确一次 (exactly once) : 消息不会丢失,也不会被重复发送

Kafka 实现精确一次的两种机制:

  • 幂等性 (Idempotence) : 保证单分区、单会话上的消息幂等性
  • 事务 (Transaction) : 保证跨分区、跨会话间的幂等性, 性能更差

幂等性

幂等 : 某些操作执行多次,但每次结果都是一样的

  • 幂等性好处:安全地重试任何幂等性操作,不会破坏系统状态

Kafka-0.11.0.0 引入幂等性 Producer

Producer 幂等性启动:

props.put("enable.idempotence", ture);
// 或
props.put(ProducerConfig.ENABLE_IDEMPOTENCE_CONFIG, true);

Kafka 自动实现消息的重复去重:

  • 用空间去换时间的优化思路
  • 当 Producer 发送了具有相同字段值的消息后,Broker 得知这些消息已经重复,就在后台丢弃掉

幂等性 Producer 的作用范围

  • 保证单分区的幂等性 :一个幂等性 Producer 只能保证某个主题的一个分区上不出现重复消息,无法实现多个分区的幂等性
  • 保证单会话的幂等性:当重启 Producer 后,该幂等性就丧失

事务

数据库的事务的 ACID : 原子性(Atomicity) ,一致性 (Consistency) , 隔离性 (Isolation) , 持久性 (Durability)

隔离性 :并发执行的事务彼此相互隔离,互不影响

已提交读 (read committed) :

  • 无脏读 : 当读取数据库时,只能看到已提交的数据
  • 无脏写 : 当写入数据库时,只能覆盖掉已提交的数据

Kafka-0.11 支持事务 :

  • read committed 隔离级别 :保证多条消息原子性地写入到目标分区,同时保证 Consumer 只能看到事务成功提交的消息

事务型 Producer 的作用范围:

  • 跨分区的幂等性:保证消息原子性地写入到多个分区中。要么全部写入成功,要么全部失败
  • 跨会话的幂等性:Producer 重启后,依然能精确一次处理

设置事务型 Producer :

  • 开启 enable.idempotence = true
  • 设置 Producer 端 transctional.id

调整 Producer 代码 :

  • initTransaction : 事务的初始化
  • beginTransaction : 事务开始
  • commitTransaction : 事务提交
  • abortTransaction : 事务终止
producer.initTransactions();try {producer.beginTransaction();//保证 Record1 和 Record2 为一个事务统一提交 Kafkaproducer.send(record1);producer.send(record2);producer.commitTransaction();
} catch (KafkaException e) {producer.abortTransaction();
}

写入失败消息,也会写入到日志中 :

  • Consumer 读取事务型 Producer 消息时,要设置 isolation.level

isolation.level 取值:

  • read_uncommitted (默认值) : Consumer 能读到 Kafka 写入的任何消息。用事务型 Producer,Consumer 不能用这个
  • read_committed : Consumer 只会读取事务型 Producer 成功提交事务写入的消息
http://www.yayakq.cn/news/922439/

相关文章:

  • 邯郸网站建设费用中学生旅游网站开发的论文怎么写
  • 大力推进网站集约化建设wordpress模块化主题
  • 免费的游戏网站建设安全的网站制作公司
  • 网站收录提交接口wordpress标签数据库
  • 好的网站建设重庆航运建设发展有限公司网站
  • 加强公司窗口网站建设镇江市机关效能与作风建设网站
  • 建设一个网站论坛要多少钱襄城县做网站的
  • 湖北专业网站建设产品介绍白熊阅读做网站架构
  • 网站设计方案模板商城网站建设视频教程
  • 职业生涯规划大赛成长赛道网站关键词优化软件
  • 如何查询网站域名备案信息免费的网站推广
  • 排名前十的网站上海市嘉定建设局网站
  • 做字体网站东莞常平中学录取分数线2022
  • 扁平化网站建设公司合肥网站建设王道下拉??
  • 快站建站做网站要营业执照吗
  • 网站建设+临沂质量好网站建设价格
  • 西宁做网站君博领先广告vi设计是什么
  • 做代练去什么网站安全吗sem培训班培训多少钱
  • 在线响应式网站ps做图哪个网站好
  • 网站开发自学流程网络营销有用吗
  • 织梦批量修改网站源代码武威 网站建设
  • 哈尔滨网站设计报价成都装修网站制作价格
  • 腾讯云建设网站视频福安seo
  • 做网站需要买什么wordpress设置ip
  • 微信支付 网站开发建设工程合同法全文
  • 网络网站知识app做爰午夜福利全过程视频网站
  • 网站seo诊断技巧wordpress怎么修改密码
  • 网站的产品中心怎么做学python去哪个培训机构好
  • 品牌营销做得好的品牌有哪些网站优化专家18600119496
  • 做网站推淘宝客西安公司做网站