Strom的提高性能减少fail的相关配置

storm

2017-01-21

689

0

 当storm处理速度跟不上数据传入的速度时,需要调大excutor的输入输出的额度。

下面的配置参数可以根据实际情况调整。

/**
The topology.receiver.buffer.size is the maximum number of messages that are batched together at once for appending to 
an executor’s incoming queue by the worker receive thread (which reads the messages from the network) 
Setting this parameter too high may cause a lot of problems (“heartbeat thread gets starved, throughput plummets”).
The default value is 8 elements, and the value must be a power of 2 (this requirement comes indirectly from LMAX Disruptor).
*/
conf.put(Config.TOPOLOGY_RECEIVER_BUFFER_SIZE, 8);
/**
topology.transfer.buffer.size is actually a list of tuples. 
The various executor send threads will batch outgoing tuples off their outgoing queues onto the transfer queue. 
The default value is 1024 elements.
*/
conf.put(Config.TOPOLOGY_TRANSFER_BUFFER_SIZE, 32);
/**
The topology.executor.receive.buffer.size is the size of the incoming queue for an executor. 
Each element of this queue is a list of tuples. Here, tuples are appended in batch. 
The default value is 1024 elements, and the value must be a power of 2 (this requirement comes from LMAX Disruptor).
*/
conf.put(Config.TOPOLOGY_EXECUTOR_RECEIVE_BUFFER_SIZE, 16384);
/**
The topology.executor.send.buffer.size is the size of the outgoing queue for an executor. 
Each element of this queue will contain a single tuple. 
The default value is 1024 elements, and the value must be a power of 2 (this requirement comes from LMAX Disruptor).
*/
conf.put(Config.TOPOLOGY_EXECUTOR_SEND_BUFFER_SIZE, 16384);

转载请注明出处: http://www.julyme.com/20170121/67.html

发表评论

全部评论:0条

Julyme

感觉还行吧。

Julyme的IT技术分享



/sitemap