2013-06-24 25 views
0

我正在设计一个系统,我将使程序以名义/冗余模式运行,一台机器上,一台机器上。如果名义程序失败(故障切换事件),冗余应接管并作为新的名义进程承担运营。这对用户应该是透明的。故障转移:对于软件错误或硬件或两者?

我的问题是:当故障转移发生时,这是否仅仅是因为硬件故障?或者软件错误是否足以触发故障转移?

更一般地说,是否有行业标准来决定什么应该导致故障转移,还是由系统架构师/设计师决定?

回答

1

从群集的角度来看,这些类型的错误没有任何区别。问题是你不能依赖任何来自失败节点的“我失败”的事件。

集群(在您的情况下“冗余”角色)只是发现一个节点没有发送心跳(没有响应ping)。然后“冗余”使自己成为“主”并开始处理传入的请求。这就是我想的。