可靠性是大型分布式系统最基本的功能
当然,为了有效地进行故障调试,自我检查中所依赖的内部运作细节也应该 给管理整体系统的操作员。在非计算机领域中对自动化影响的类似讨论——例如,民航生"或工业应用中——经常会指出高效的自动化的缺点美∶随着时间的推移,操作员与系统的有用的、直接接触会逐渐减少,因为自动化会覆盖越来越多的日常活动。不可避免的,当自动化系统出现问题时,操作员将无法成功地操作该系统。由于缺乏实践,他们已经丧失了反应的流畅性,他们有关系统"应该"做什么的心理模型不再反映现实中系统"正在进行"的活动。这种情况在系统非自主运行时出现得更多,即,当自动化逐渐取代了手动操作,假设其他的手工操作仍然可能执行,并且如之前一样一直可用。令人难过的是,随着时间的推移,这一假设终将不再正确∶这些手动操作最后将无法执行,因为允许它们执行的功能已经不存在了。
Google也经历过自动化在某些条件下是有害的情况,参看下面"自动化∶允许大规模故障发生"补充材料。但是以 Google的经验来看,在更多的系统中自动化和自主化的行为不再是可选择的附加项。随着服务规模扩大,肯定是这样的。但是不论系统规模大小,系统中具有更多自主行为的系统仍然有很多好处。可靠性是最基本的功能,并且自主性、弹性行为是达到这一特征的有效途径。
页:
[1]