1.Strom 流式计算过程
strom的分布式计算结构: topology
-
stream: 数据流 => 键值对构成的列表
-
spout:数据流的生成者 => 负责采集数据,并将数据进行“发射”emit
-
bolt: 运算 => 接受来自spout的数据,进行数据运算
2.Storm并发机制
storm中支持计算在多台机器上水平扩容,并将计算切分为多个独立的task(一个spout或者bolt实例)在集群上并发执行
-
topology的组成:
-
Nodes: 代表集群中的一台服务器,会执行topology 中的一部分运算
-
Workers: 表示在JVM上独立运作的一个进程,一个Node可以配置多个worker,一个topology 会发送到一个或者多个worker上运行
-
Executor: 表示jvm中运行的一个线程,如果不指定,storm 会给每个executor 分配一个task,多个task可以指定给同一个executor执行
-
Task : task是spout和bolt的实例,他们的nextTuple()和execute()方法会被executors线程调用执行
-