文档章节

Storm 调优

吹比龙
 吹比龙
发布于 2016/12/12 08:58
字数 313
阅读 168
收藏 0

1、storm反压问题
反压问题 在storm1.0以前 只有ack模式才能通过配置   Spout tuples 不使用message id, TOPOLOGY_MAX_SPOUT_PENDING是不生效的。

反压不成熟带来的问题
fieldsGrouping不合理或者洪峰流量,bolt接收队列暴涨导致OOM,完善反压后可以解决这个问题


topology.backpressure.enable: false
backpressure.disruptor.high.watermark: 0.9
backpressure.disruptor.low.watermark: 0.4

2、分组问题

分组同流分组filedgroup、本地或者随机localOrShuffleGrouping好处是先本地后随机    

3、如果不需要ack就把ack关闭

conf.setNumAckers(0);

4、并行度

建议

worker : executor = 1: 10-15

5、一个 topology 12个worker最合理,过多容易导致内存通信变为进程间通信

6、Jvm GC 需要使用CMS GC 方式, JStorm默认已经设置, 使用Storm的朋友需要类似的设置

worker.childopts: "-Xms1g -Xmx1g -Xmn378m -XX:SurvivorRatio=2 -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=65"

7、推荐slot数为 ”CPU 核 - 1“, 假设24核CPU, 则slot为23

8、nimbus节点上建议不运行supervisor, 并建议把nimbus放置到ZK 所在的机器上运行

9、选型

按照性能来说, trident < transaction < 使用ack机制普通接口 < 关掉ack机制的普通接口, 因此,首先要权衡一下应该选用什么方式来完成任务。

© 著作权归作者所有

共有 人打赏支持
吹比龙
粉丝 5
博文 121
码字总数 35712
作品 0
合肥
程序员
私信 提问
基于Storm流计算天猫双十一作战室项目实战(Storm Kafka HBase Highchats)

基于Storm流计算天猫双十一作战室项目实战(Storm Kafka HBase Highchats) 网盘地址:https://pan.baidu.com/s/1-59o76H32Jfp0Vp-o8zLYg 提取码: im8f 备用地址(腾讯微云):https://share...

小小搞笑弟
11/16
0
0
熟悉storm/spark源码 开发

项目属性 工作模式 : 网上工作 技能要求 : 1. 可以对storm/spark 源码进行二次开发! 2. 熟悉storm/spark源码,底层实现原理,细节,调优方案! 项目描述 1、公司一个用storm/spark 源码开发...

水中月10
2016/10/07
1
0
Storm同步调用之DRPC模型探讨

  摘要:Storm的编程模型是一个有向无环图,决定了storm的spout接收到外部系统的请求后,spout并不能得到bolt的处理结果并将结果返回给外部请求。所以也就决定了storm无法提供对外部系统的同...

刘洋intsmaze
2017/09/28
0
0
Apache Storm 0.9.6/0.10.0 发布

Apache Storm 0.10.0 发布,此版本是个稳定版本,相比之前的 Beta 版本主要包括 bug 修复和改进: STORM-1108: Fix NPE in simulated time STORM-1106: Netty should not limit attempts to...

oschina
2015/11/06
4.7K
8
Storm概念讲解和工作原理介绍

Strom的结构 Storm与传统关系型数据库 传统关系型数据库是先存后计算,而storm则是先算后存,甚至不存 传统关系型数据库很难部署实时计算,只能部署定时任务统计分析窗口数据 关系型数据库重...

张超
2015/04/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Integer使用双等号比较会发生什么

话不多说,根据以下程序运行,打印的结果为什么不同? Integer a = 100;Integer b = 100;System.out.println(a == b);//print : trueInteger a = 200;Integer b = 200;System.out.pr...

兜兜毛毛
34分钟前
1
0
CockroachDB

百度云上的CockroachDB 云数据库 帮助文档 > 产品文档 > CockroachDB 云数据库 > 产品描述 开源NewSQL – CockroachDB在百度内部的应用与实践 嘉宾演讲视频及PPT回顾:http://suo.im/5bnORh ...

miaojiangmin
46分钟前
2
0
I2C EEPROM驱动实例分析

上篇分析了Linux Kernel中的I2C驱动框架,本篇举一个具体的I2C设备驱动(eeprom)来对I2C设备驱动有个实际的认识。 s3c24xx系列集成了一个基于I2C的eeprom设备at24cxx系列。at24cxx系列芯片包...

yepanl
47分钟前
3
0
设计模式之工厂模式

本篇博文主要翻译这篇文章: https://www.journaldev.com/1392/factory-design-pattern-in-java 由于翻译水平有限,自认为许多地方翻译不恰当,欢迎各位给出宝贵的建议,建议大家去阅读原文。...

firepation
今天
8
0

中国龙-扬科
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部