Kafka的参数调优
这篇文章主要说一下在生产过程中的kafka常用的调优参数,
首先kafka的版本是0.9.0.1,针对以下几个方面来说,
针对kafka的堆内存:


针对kafka的集群调优:

kafka的的消息机制有三种,同步 异步和 oneway
同步(sync)的意味着消息是以batch的方式push,这样会极大的提高broker的性能,但这样也会增加数据丢失的风险
异步(async)的参数比较多,主要有四个参数

其中第二个消息确认机制参数有三种,当它的值为1时,kafka的leader 的partition会接受到数据,但如果leader挂了,数据会丢失.如果设置为0,那么producer不会等到broker的响应,也就是说producer不管消息发出去的死活,这样可以得到最大的吞吐量,但是数据丢失风险极高.如果设置为-1,那么producer会等到所有的partition收到消息时候等到broker的一个确认.这样可以保证最高可靠性,但同时时效性也就降低了.
第三个参数表示缓存消息的时间,例如5秒在将数据发出去,吞吐量增大了,同时时效性也就降低了
第四个参数表示缓存的最大消息数量
第五个参数当设置为-1时,消息会阻塞,不会丢掉,当设置为0时,buffer队列满了会直接丢掉.
第六个参数表示一批数据量的大小,当达到这个数值时候,producer才会发送数据.


对于ONEWAY来说,消息可靠性最低,但是低延迟,高吞吐,对于某些不需要高可靠性的场景比较适用.
此外 在server.properties中可增加两个参数
replica.socket.timeout.ms = 300000 #当集群之间网络不稳定时,调大该参数
replica.lag.time.max.ms= 600000# 如果网络不好,或者kafka集群压力较大,会出现副本丢失,然后会频繁复制副本,导致集群压力更大,此时可以调大该参数
在consumer.properties中可增加两个参数
zookeeper.connection.timeout.ms = 60000
zookeeper.sync.time.ms = 5000
上面两个参数时间间隔可调大一点,避免网络问题引起的节点误判下线
最后合理设置副本数,如果broker的数量为5,那么副本设置3个足够,避免过多的冗余.
以上就是常用的kafka参数调优,如有其它,欢迎大家补充.
Kafka的参数调优的更多相关文章
- 【Kafka】Kafka-配置参数详解-参数调优
Kafka-配置参数详解-参数调优 kafka 目录_百度搜索 为什么kafka使用磁盘而不是内存 - CSDN博客 Kafka 配置说明 - 風吹云动 - 博客园 kafka生产服务器配置 - Or ...
- DataPipeline |ApacheKafka实战作者胡夕:Apache Kafka监控与调优
https://baijiahao.baidu.com/s?id=1610644333184173190&wfr=spider&for=pc DataPipeline |ApacheK ...
- Linux上TCP的几个内核参数调优
Linux作为一个强大的操作系统,提供了一系列内核参数供我们进行调优.光TCP的调优参数就有50多个.在和线上问题斗智斗勇的过程中,笔者积累了一些在内网环境应该进行调优的参数.在此分享出来,希望对大家 ...
- Kafka_2.12-2.5.1集群搭建与参数调优
Kafka是目前业界使用最广泛的消息队列.数据流转常见这样的业务场景,客户端把采集到的日志推送给Kafka,业务方可以消费Kafka的数据落地HDFS,用于离线分析,也可以使用Spark或Flink消 ...
- Spark Shuffle原理、Shuffle操作问题解决和参数调优
摘要: 1 shuffle原理 1.1 mapreduce的shuffle原理 1.1.1 map task端操作 1.1.2 reduce task端操作 1.2 spark现在的SortShuff ...
- 搭建 windows(7)下Xgboost(0.4)环境 (python,java)以及使用介绍及参数调优
摘要: 1.所需工具 2.详细过程 3.验证 4.使用指南 5.参数调优 内容: 1.所需工具 我用到了git(内含git bash),Visual Studio 2012(10及以上就可以),xgb ...
- 【转】Windows下使用libsvm中的grid.py和easy.py进行参数调优
libsvm中有进行参数调优的工具grid.py和easy.py可以使用,这些工具可以帮助我们选择更好的参数,减少自己参数选优带来的烦扰. 所需工具:libsvm.gnuplot 本机环境:Windo ...
- spark参数调优
摘要 1.num-executors 2.executor-memory 3.executor-cores 4.driver-memory 5.spark.default.parallelism 6. ...
- Linux内核 TCP/IP、Socket参数调优
Linux内核 TCP/IP.Socket参数调优 2014-06-06 Harrison.... 阅 9611 转 165 转藏到我的图书馆 微信分享: Doc1: /proc/sy ...
随机推荐
- 数组的连接和截取(contact和slice和splice)
<script> var arr1 = ["a","b","c"]; var arr2 = [1,2,3]; //concat把 ...
- Linux 命令系列之 seq
简介 seq -- print sequences of numbers seq 命令可以输出各种有规律的数字. 用法 usage: seq [-w] [-f format] [-s string] ...
- Salesforce考试 | 如何维护我的Salesforce认证
问题1 Salesforce证书是需要每年维护吗? Salesforce每年会发布3次Realese,分别是Spring.Summer和Winter,可以理解为一年3次的系统新版本更新,每次Relea ...
- Hadoop学习笔记(2)-HDFS的基本操作(Shell命令)
在这里我给大家继续分享一些关于HDFS分布式文件的经验哈,其中包括一些hdfs的基本的shell命令的操作,再加上hdfs java程序设计.在前面我已经写了关于如何去搭建hadoop这样一个大数据平 ...
- Cobalt Stike使用教程
目录: 安装与连接 监听器Listner 基本使用方法--Cobalt Strike生成后门 Beacon详解 菜单栏与视图 文件管理与进程管理 浏览器代理 Cobalt Strike扩展 提权 横向 ...
- form表单里的button调用js函数
近来发现一个特别奇怪的问题:在form表单里,button的onclick事件无法调用js函数.代码如下(这段代码放在form标签里): dropUpdateAddress调用的js函数为: 这个时候 ...
- MySQL 查询语句优化思路
query 语句的优化思路和原则主要提现在以下几个方面:1. 优化更需要优化的Query:2. 定位优化对象的性能瓶颈:3. 明确的优化目标:4. 从 Explain 入手:5. 多使用profile ...
- GC日志分析详解
点击返回上层目录 原创声明:作者:Arnold.zhao 博客园地址:https://www.cnblogs.com/zh94 GC日志分析详解 以ParallelGC为例,YoungGC日志解释如下 ...
- JS面向对象编程之封装
来源:https://segmentfault.com/a/1190000015843072 我们所熟知的面向对象语言如 C++.Java 都有类的的概念,类是实例的类型模板,比如Student表示学 ...
- OpenCV学习(2)——一个简单的例子
光说不练假把式,来看一个简单的例子,了解了解OpenCV.这个小demo没有几行代码,作用是显示项目目录下面的一张图片. #include <opencv2\opencv.hpp> #in ...