首页 > 其他分享 >kafka问题总结

kafka问题总结

时间:2022-10-25 14:25:11浏览次数:81  
标签:总结 Java 分区 kafka 问题 2.0 服务端 客户端

  这篇文章主要记录自己遇到和在网上看到的一些关于kafka的相关问题。

问题1:客户端和服务端版本不一致造成的消息发送延迟高现象

  kafka客户端支持多语言api,这里只关注Java客户端,如下两种方式:

<dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka_2.11</artifactId>
        <version>0.10.2.0</version>
</dependency>

  这样会引入Java和scala两种依赖,如果只引入Java可以采用下面这种方式:

<dependency>
         <groupId>org.apache.kafka</groupId>
         <artifactId>kafka-clients</artifactId>
         <version>0.10.2.0</version>
</dependency>

  回到问题:分区Leader在进行分区数据写入的时候,为保证数据的完整性,会对分区进行加锁,同时在锁块中会有一个压缩的操作,而客户端和服务端消息版本协议不一致的话,就会造成服务端需要将客户端发送的数据解压、重新计算点位,然后再压缩的一个过程,这个过程是比较耗费性能的,就会造成其他对该分区写入的线程一直等待,从而产生较高延迟。

  具体分析可参考:https://www.codingw.net/Article?id=778

 

标签:总结,Java,分区,kafka,问题,2.0,服务端,客户端
From: https://www.cnblogs.com/jing-yi/p/16824686.html

相关文章

  • kafka与eventing
    项目地址https://strimzi.io/quickstarts/https://github.com/strimzi/strimzi-kafka-operator/tree/0.31.1/examples/kafka部署ClusterRole和CRDkubectlcreate-f'h......
  • qt QString 转float 精度问题
    在使用QString转float时,会发现结果float被自动增加精度问题。如QStringstr="23.2343",floatf=str.toFloat();结果可能是f=23.234299909...。如果我不想要那么高......
  • Zookeeper的服务器的log4j升级为log4j2的升级方案(忽略配置化兼容问题)
    参考在线markdown编辑器:​​http://marxi.co/​​Zookeeper的服务器的log4j升级为log4j2的升级方案(忽略配置化兼容问题)目前希望可以升级将Zookeeper中log4j的版本升级到log......
  • mockJS与file-saver依赖的冲突问题
    今天在使用POST下载并使用file-saver中的saveAs保存文件时意外地发现保存下来的文件直接报错说文件损坏,如下图Excel为例:网上查阅大量方法,经过切换后端服务器,改为上线项目......
  • 软件供应链安全事件频发,开源安全问题如何保障?
    2020年12月针对SolarWinds®的"供应链gong击"被认为是网络安全界的一个里程碑事件。这次gong击是由SolarWinds的Orion软件中的安全漏洞导致的,使黑客能够入侵全球数百家公司......
  • POJ 1700(过河问题)
    玩过《雷顿》就知道这题可以贪心小等于2人:1,2->3人时:1,3->1<-1,2->1<-否则:1,2->2<-max1,max2->1<-OR:1,max1->1<-2,max2->2<-于是数据规模-2ProgramP1700;vart,n,i,j:long......
  • 解决容器Docker内部启动计划任务crontab不生效不执行的问题
    docker使用centos7镜像首先编辑crond,注释#session  required  pam_loginuid.so:vi/etc/pam.d/crond  然后重启crond服务:/etc/init.d/crondrestart ......
  • 安装python的Django时,无法在PyCharm下的terminal进入虚拟环境的问题
    今日将网上他人django源码拉取下来,准备好用anconda工具来新建一个虚拟环境。等环境搭建好之后,打开pycharm发现在terminal中使用无法进入到虚拟环境中。在网上搜索了一番,终......
  • python基础面试总结
    1闭包定义:闭包是由函数及其相关的引用环境组合而成的实体(即:闭包=函数+引用环境)(想想Erlang的外层函数传入一个参数a,内层函数依旧传入一个参数b,内层函数使用a和......
  • 软件测试基础面试总结
    1常用响应码?1开头是信息相应100内容可行,应继续请求,如已完成忽略2开头是成功响应200成功202请求接收到,但是没有响应3开头是重定向301转至指定的url......