worker:topology的进程。
executor:线程,由worker产生。
task:具体一个 spout/bolt的实例。
thread和task关系:一个thread可以运行多个实例,但是如果不显示设定task数量:setNumTasks(n),一个thread默认执行1个实例。
setBolt("name","new ABolt()",3).setNumTasks(4); 这里thread数量为3,ABolt的实例化个数=4.
以上举例来说:
worker一共=2, parallelism=2+2+6=10,
"blue-spout"有thread=2,每个线程执行默认1个task。
"green-bolt"有thread2个,但设定了有4个bolt实例,则每个thread执行2个task。
"yellow-bolt"有thread6个,每个thread执行默认一个task。
具体由下图显示:
来源:oschina
链接:https://my.oschina.net/u/1399748/blog/501058