storm调优

本文详细探讨了Apache Storm的调优,包括集群层面的netty调优和GC日志记录,以及拓扑层面的并行度调整、避免耗时操作、数据分组策略、批处理间隔等关键优化点。建议根据实际情况动态调整MaxSpoutPending,避免fail,并关注协调器(Coordinator)的工作原理与作用。
摘要由CSDN通过智能技术生成

storm调优

@(STORM)[storm]

本文从2个方面讨论storm的调优,第一个是集群的调优,第二个是运行在集群中的拓扑的调优,这部分还包括了使用storm-kafka从kafka中读取消息的调优。

官方的一些建议请见:http://storm.apache.org/documentation/FAQ.html
中文版:http://ifeve.com/storm-faq/

一、集群调优

1、netty的调优

netty的配置项主要包括以下几个:

storm.messaging.netty.server_worker_threads: 1
storm.messaging.netty.client_worker_threads: 1
storm.messaging.netty.buffer_size: 5242880 #5MB buffer
# Since nimbus.task.launch.secs and supervisor.worker.start.timeout.secs are 120, other workers should also wait at least that long before giving up on connecting to the other worker. The reconnection period need also be bigger than storm.zookeeper.session.timeout(default is 20s), so that we can abort the reconnection when the target worker is dead.
storm.messaging.netty.max_retries: 300
storm.messaging.netty.max_wait_ms: 1000
storm.messaging.netty.min_wait_ms: 100

# If the Netty messaging layer is busy(netty internal buffer not writable), the Netty client will try to batch message as more as possible up to the size of storm.messaging.netty.transfer.batch.size bytes, otherwise it will try to flush message as soon as possible to reduce latency.
storm.messaging.netty.transfer.batch.size: 262144
# Sets the backlog value to specify when the channel binds to a local address
storm.messaging.netty.socket.backlog: 500

# By default, the Netty SASL authentication is set to false.  Users can override and set it true for a specific topology.
sto
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值