首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >kafka java进程消耗太多内存

kafka java进程消耗太多内存
EN

Stack Overflow用户
提问于 2018-10-03 23:25:04
回答 2查看 2.2K关注 0票数 1

我有一个带有三个节点的kafka 0.11.xx服务器。服务器所在的机器是具有4 4GB的linux Ubuntu机器。我可以看到java进程占用了大约90%的内存。我已经将堆的值设置为5 5GB。

占用内存的进程是java jre//java -Xmx5G -Xms5G

那么,这是一个正常的情况下,kafka预计运行与4-5 GB的内存,或这是一些不正常的东西。

如果这不是通常的情况,你可以为这个问题提出一个解决方案,或者增加RAM将是唯一的解决方案。

EN

回答 2

Stack Overflow用户

发布于 2018-10-03 23:32:00

Kafka是designed to use the memory available to it,作为确保其高性能的一部分。

Linux也会grab the memory it needs,这不一定是一件坏事。

只有当您的性能分析确定机器的可用RAM出现瓶颈时,我才会担心内存使用情况。

票数 4
EN

Stack Overflow用户

发布于 2018-10-04 06:32:47

以下是一些事情:

  • 不知何故,您将JVM堆参数设置为5 5GB。但是你的服务器只有4 4GB的物理内存?你需要为操作系统、其他辅助应用程序/实用程序以及Kafka保留内存,否则会遇到问题。
  • Kafka本身依赖堆外内存(即JVM之外的内存)从堆外为消费者提供服务,因此它不必一直从磁盘读取所有内容。但同样,你需要有可用的内存。

由于您指出集群上没有太多活动,因此我首先将Kafka服务的JVM参数(我假设这是您发布的内容)设置为2 2GB,因此:-Xmx2G -Xms2G。然后看看它对您的应用程序/服务有何影响。然后,Kafka将有大约2GB+的内存用于堆外处理。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52630551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档