面对软件错误构建可靠的分布式系统-6编写可容错系统

来源:互联网 发布:2016淘宝推广 编辑:程序博客网 时间:2024/06/05 20:04

 编写可容错系统

电话交换机的设计者们在软件设计中花了一

半的精力在错误的检测和纠正上[48]

Richard Kuhn,国家标准与技术协会

什么是可容错系统?如何编写可容错系统?这个问题是本论文的重点所在,也是我们理解如何构建可容错系统的关键。在本章中,我们定义了我们所说的容错的含义,并提出了用来编写可容错系统的一种特殊方法。我们以两条引述来开始本章:

如果一个系统的程序在出现逻辑错误的时候仍然能够正确地执行,我们就说该系统是可容错的。——[16]

……

要想设计并构造一个可容错系统,你必须要明白系统在什么情况下应该正常工作,在什么情况下该失效,可能会发生什么类型的错误。错误检测是容错系统的一个基本部件。也就是说,如果你知道发生了一个错误,你可能用替换掉出错部件的方法、采用另一种计算方式的方法或上报一个异常的方法来达到包容该错误的目的。然而,你希望避免为了达到可容错性而给系统增添不必要的复杂性,因为这些复杂性可能会导致系统可靠性的降低。——VoasDugan的引用[67]

我在这里的表述延续了Dugan的建议,我将说明当检测到一个反常情况发生时会发生什么事情,以及来建造一个软件机制来检测和纠正错误。

本章的余下部分讲述了:

           

原创粉丝点击