【Hadoop】Yarn 状态机以及事件机制
简介 Yarn采用了基于事件驱动的并发模型: 所有状态机都实现了EventHandler接口,很多服务(类名通常带有Service后缀)也实现了该接口,它们都是事件处理器。 需要异步处理的事件由中央异步调度器(类名通常带有Dispatcher后缀)统一接收/派发,需要同步处理的事件直接交给相应的事件处理器。 某些事件处理器不仅处理事件,也会向中央异步调度器发送事件。 事件处理器定义 事件处理器定义如下: @SuppressWarnings("rawtypes") @Public @Evolving public interface EventHandler<T extends Event> { void handle(T event); } 只有一个handler函数,如参是事件: 中央处理器AsyncDispatcher AsyncDispatcher 实现了接口Dispatcher,Dispatcher中定义了事件Dispatcher的接口。主要提供两个功能: 注册不同类型的事件,主要包含事件类型和事件处理器。 获取事件处理器,用来派发事件,等待异步执行真正的....