
其他
暂存一些文章
小飞侠fly
这个作者很懒,什么都没留下…
展开
-
kafka2.8.0源码编译报错
编译kafka源码需要以下几个环境1、jdk1.82、scala3、gradle4、kafka包现在kafka的最新版为2.8.0,gradle最新版为7.0,scala2.13.5,具体安装方式就不描述了,安装时要注意各个路径都要没有空格,比如Program Files (x86)就不行。再就是我踩的坑!安装以上版本后编译一直报cannot resolve symbol Mavendeployment on gradle,查了好久似乎都没对应的解决办法,最后将gradle降低到6.原创 2021-04-30 21:50:10 · 914 阅读 · 4 评论 -
二、kafka中幂等的使用
kafka幂等性是针对生产者的,需要开启以下配置1、enable.idempotence:true2、retries:大于0,如果小于等于0的话则抛出ConfigExceptionException in thread "main" org.apache.kafka.common.config.ConfigException: Must set retries to non-zero when using the idempotent producer. at org.apache.kafk原创 2021-08-19 22:39:11 · 832 阅读 · 1 评论 -
三、kafka中事务的使用
本来以为我用过幂等性了,再使用事务应该很简单,不知道幂等性使用的可以去查看上一篇。首先肯定是照着文档配置生产者,配置如下:Properties props = new Properties(); props.put("bootstrap.servers", "localhost:9092,localhost:9093,localhost:9094"); props.put("acks", "all"); props.put("retries", 3)原创 2021-09-04 14:59:57 · 771 阅读 · 2 评论 -
Kafka重分配流程图
原创 2021-11-07 00:02:15 · 849 阅读 · 0 评论 -
一、kafka源码之分区器DefaultPartitioner
1、分区的具体代码如下:public int partition(String topic, Object key, byte[] keyBytes, Object value, byte[] valueBytes, Cluster cluster) { List<PartitionInfo> partitions = cluster.partitionsForTopic(topic); int numPartitions = partitions.size原创 2021-05-03 11:06:49 · 415 阅读 · 1 评论 -
kafka与springboot集成消费者工作原理
学习过kafka的都知道同一个消费组中同一个topic的数据只会消费一次,对于一个topic可以设置多个patition,如果一个消费组中存在多个消费者,则会通过分区策略来进行分配,比如一个topi原创 2021-05-28 14:28:59 · 485 阅读 · 1 评论