failover sink processor根据优先级从sink组中选择宿。具有最高优先级的接收器将写入数据直到其失败(接收器的故障甚至可能是因为下游代理在RPC陷阱的情况下死亡),然后选择组中其他接收器中具有最高优先级的接收器。选择不同的接收器才能在当前接收器写入数据失败时写入数据。这确保了当没有故障时,第二层上的所有代理都有一个从每个机器写入的接收器,并且只有在某些机器看到更多的传入数据时才会发生故障。
但是,故障切换机制不会选择新的接收器,除非当前接收器出现故障。这意味着即使可能的是,具有最高优先级的代理可能失败并重新联机,failover sink processor不会使sink写入该代理,直到当前活动的sink遇到错误为止。failover sink processor的工作流程如图所示。