加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何设置storm worker的JVM最大堆大小?

发布时间:2020-12-15 04:32:52 所属栏目:Java 来源:网络整理
导读:我是Storm编程的新手,我有一份工作要对自定义分组方法进行测试,看看它是否更好. 因此,我必须在几种不同的条件下测量风暴的吞吐量,例如不同的工人数量,不同的工人记忆等等 使用conf.setNumWorkers();设置工作人员编号很容易,但我发现很难设置每个工作人员的最
我是Storm编程的新手,我有一份工作要对自定义分组方法进行测试,看看它是否更好.

因此,我必须在几种不同的条件下测量风暴的吞吐量,例如不同的工人数量,不同的工人记忆等等

使用conf.setNumWorkers();设置工作人员编号很容易,但我发现很难设置每个工作人员的最大堆大小.

我尝试编辑storm.yaml并补充说

worker.childopts: "-Xmn128m-Xms128m-Xmx128m"

conf.put(Config.WORKER_CHILDOPTS,"-Xmn128m?-Xms128m?-Xmx128m");

添加到我的代码中.

但是当我在工作节点上使用jmap -heap [pid]时,我发现最大堆大小仍然是768m,这是默认的最大堆大小.

我怎样才能达到这个目的来限制JVM的最大内存使用量?

顺便说一句,我正在使用kafkaspout向暴风雨发送消息,欢迎对我的测试工作提出任何建议.

解决方法

尝试编辑storm / default.yaml文件.查找工作器设置,您将在那里找到设置堆内存的条目.它应该默认看起来像这样!

worker.heap.memory.mb: 768

在同一个文件中,您还可以找到以下设置,您可以根据需要更改值.

topology.component.resources.onheap.memory.mb: 128.0
topology.component.resources.offheap.memory.mb: 0.0
topology.component.cpu.pcore.percent: 10.0
topology.worker.max.heap.size.mb: 768.0

希望有所帮助!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读