我一直在试用kafka,从主站点上的文档中可以看到,您可以为jvm设置不同的选项,如堆大小和它使用的垃圾收集器:
http://kafka.apache.org/documentation.html#java
但是,它没有说明如何/在何处设置这些选项。应用程序附带了一个/config目录,其中包含许多用于配置的文件,但没有一个用于java。它还附带了一个/bin目录,其中包含一堆kafka的脚本,但同样没有真正指明如何配置java。
所以我的问题是,如何配置kafka使用的java选项?是通过文件完成的还是有不同的方法?
6条答案
按热度按时间vmjh9lq91#
您可以从命令行传递java参数。例如
对于“生产服务器配置”,您可以创建属性文件或通过创建
然后提供给producerconfig
wgmfuz8q2#
在中修改脚本
bin
目录是非常不推荐的。将kafka升级到下一个版本时,提取新的二进制文件将覆盖脚本中所做的更改。首选的方法应该是设置环境变量
KAFKA_HEAP_OPTS
在剧本之外。export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
如果在通过脚本启动kafka之前设置了var,那么它将使用var,而不是中定义的默认值/bin/kafka-server-start.sh
mfpqipee3#
您还可以通过服务定义设置此参数,如下所示。
83qze16e4#
要添加通用jvm设置(例如用户时区),可以使用
KAFKA_OPTS
环境变量来自kafka-run-class.sh
:9cbw7uwe5#
另一种方法是修改
/bin/kafka-server-start.sh
:或在
/bin/kafka-run-class.sh
:zpf6vheq6#
查看kafka-run-classh.sh-kafka使用以下变量:
$kafka\u heap\u选项
$kafka\u jvm\u性能\u选项
$kafka\u gc\u log\u选项
$kafka\u jmx\u选项
$kafka\u log4j\u选项
您可以通过以下方式运行: