Storm 似乎没有文档描述所有配置文件,请查找源代码的配置文件
例如: apache-storm-1.0.1/storm-core/src/jvm/org/apache/storm/Config.java
/**
* Netty based messaging: The # of worker threads for the server.
*/
@isInteger
@isPositiveNumber(includeZero = true)
public static final String STORM_MESSAGING_NETTY_SERVER_WORKER_THREADS = "storm.messaging.netty.server_worker_threads";
/**
* Netty based messaging: The # of worker threads for the client.
*/
@isInteger
public static final String STORM_MESSAGING_NETTY_CLIENT_WORKER_THREADS = "storm.messaging.netty.client_worker_threads";
分别指netty server端和client端的工作线程数
继续看代码说明:
/**
* The jvm opts provided to workers launched by this supervisor.
* All "%ID%", "%WORKER-ID%", "%TOPOLOGY-ID%",
* "%WORKER-PORT%" and "%HEAP-MEM%" substrings are replaced with:
* %ID% -> port (for backward compatibility),
* %WORKER-ID% -> worker-id,
* %TOPOLOGY-ID% -> topology-id,
* %WORKER-PORT% -> port.
* %HEAP-MEM% -> mem-onheap.
*/
@isStringOrStringList
public static final String WORKER_CHILDOPTS = "worker.childopts";
/**
* The default heap memory size in MB per worker, used in the jvm -Xmx opts for launching the worker
*/
@isInteger
@isPositiveNumber
public static final String WORKER_HEAP_MEMORY_MB = "worker.heap.memory.mb";
worker 可以配置不同的内存使用量。
所以worker是配置并发度的一个参数,需要合理配置来使用系统资源,总量不能超过物理内存,也不能太少影响性能。