Java
文章平均质量分 69
wangebie
这个作者很懒,什么都没留下…
展开
-
Kafka生产者的幂等性和事务性
Kafka生产者的幂等性和事务性Kafka消息交付可靠性定义消息交付可靠性保证,即指Kafka对Producer和Consumer要处理的信息的保证。最多一次:消息可能会丢失,但绝对不会重复 至少一次:消息不会丢失,但可能重复 精确一次:消息不会丢失,也不会重复发送Kafka默认对消息的保证是 至少一次 当然我们都希望精确一次。Kafka同样也提供了对精确一次的实现。主要有两种分别是幂等生产者和事务型生产者幂等生产者若开启首先需要配置enable.idempotence = .原创 2020-12-17 22:55:31 · 295 阅读 · 0 评论 -
Kafka消息丢失
Kafka消息丢失Kafka服务端Kafka只对已提交消息做有限度持久化保证已提交消息,收到消息并成功写入Broker,该消息为已提交消息。若ack设置为-1则成功写入broker的意思是leader节点+副本节点都需要写入成功,kafka默认只用leader节点写入成功即可 有限度持久化,即当kafka集群出现故障时,起码有一台broker是活着的。Kafka生产者消息丢失使用了producer.send(msg),这个方法是异步的,不保证消息发送成功,因此应该使用producer.s原创 2020-12-15 17:57:55 · 381 阅读 · 0 评论 -
Kafka压缩算法学习
Kafka压缩算法何时压缩在producer端发送消息时压缩 broker端在特殊情况也会压缩(应该尽量避免broker端的压缩) broker端和producer端配置的压缩算法不一样 消息的格式不一样 开启压缩需要在producer端配置compression.type参数何时解压缩在consumer端解压缩,Kafka会将使用的压缩算法封装进消息集合当中 broker端也会进行解压缩,用来校验消息的可靠性Producer端压缩,Broker端保持,Consume.原创 2020-12-15 17:56:56 · 427 阅读 · 0 评论 -
Arrays.asList() 返回的List 进行add() 和remove()操作报错
java.util下面的Arrays和Collections两个类不能产生对象,但是却有很多实用的方法。Array.toString()可以快速打印数组对象Arrays.asList()方法可以接受一个数组,并将其转换为List对象。这里要注意,返回的对象java.util.Arrays$ArrayList对象,而不是java.util.ArrayList对象。这两个对象均继承了AbstractL...原创 2018-06-19 22:17:52 · 717 阅读 · 0 评论