从大到小的话我们看它有这么5个层次,最简单的storm是个集群,cluster是个层次,第二个层次就是有比较明确的意义了,就是supervisor,supervisor对应的层级就是一个个的host,就是一个个的node,就是一个机器这个级别的,然后一个机器它又有很多的worker,worker其实就是对应process级别的,就是进程级别的,机器上跑几个进程,规定4个worker,就4个进程,每个worker里面跑着一个个executor,对应着的一个个线程,那接下来一个线程运行着一个或很多个task,一般很多情况下就一个task,当然了,有时候对应多个task,task就是最低级别的object,就是线程操作的就是一个个对象。
并发模型
–整个storm就有这么几个层次,从集群的角度看就是一个机器里面有多少个节点,每个节点上面有多少个进程。
–从topology的角度讲,就是一个topology要运行几个worker,一个worker会运行多少个executor,一个executor上面又会运行一
个或多个task,task就是对应spout或者bolt的对象。
并发度就是executor的数量,这里worker数定了,executor数定了,那task数怎么来定呢?
默认的task数就是并发的数量,当然你可以通过setNumTasks()来设置不同的task数,当然只能是多,不能是少,比如上图这个GreenBolt就是。
总结一下很简单,就是worker一开始设置多少个就是topology里面有多少个,executor并行度那里设置多少个就是多少个,task如果没有设置那就是一个executor对应一个task,如果有写那就是ta