Storm知识点

1、一个小集群中,每秒可以处理数以百万计的消息。  

   流是一个不间断的,无界的连续tuple(元组)

2、主:Nimbus 守护进程   从:Supervisor 守护进程

   zookeeper协调而不传递消息

3、每一个工作进程执行一个topology子集

4、nimbus是快速失败和无状态的,所有的状态要么存在zookeeper中,要么在本地磁盘

5、具体处理事务进程worker:运行具体处理组件逻辑的进程

6、具体处理线程task:worker中的每一个spout/bolt线程称为一个task

7、v0.8后task不再与物理线程对应,同一个spout/bolt的task可能会共享一个物理线程,该线程称为Executor

8、storm集群中每台机器运行多个进程,每个进程创建多个线程,每个线程执行多个任务,任务是进行数据处理的实体。

9、高可靠性:保证每条消息都能被处理

----消息处理失败

----在限定时间内未被完全处理

  消息重发

对消息树中所有消息的唯一进行异或计算,通过是否为0来判定spout发出的消息是否被完全处理。

这种模式下,每条消息会同步发送一个ack/fail,对带宽有一定的消耗,如对可靠性要求不高,可使用不同emit,关闭该模式

10、storm保证每条消息至少被处理一次,v0.7.0引入事务性拓扑,保证每条消息只处理一次

猜你喜欢

转载自www.cnblogs.com/ng1991/p/8876446.html