\\关键点
\
- 软件工程对现代运维来说是十分重要的。 \
- 定义可靠性目标(故障预算)让开发和运维可以就新功能和可用性之争进行很有启发性的对话。 \
- 手工运维工作让运维团队的扩张与IT系统的增长之间呈次线性关系。 \
- 对运维和质量保证工作来说监控是非常基本的一块。 \
- 处理负载需要多方面的方法,负载均衡和对超载的优雅处理是位于最前线的。
《站点可靠性工程——谷歌是如何运行生产系统的》是一个开放的窗口,让大家可以看到谷歌在全世界范围内运行一些大型IT系统的经验和专业技能。这本书描写了支撑着站点可靠性工程(Site Reliability Engineering,SRE)学科的一些基本原则。她也详细描述了一些谷歌的关键实践,让谷歌可以以惊人的速度扩张而又不损失性能和可靠性。\
尽管站点可靠性工程出现得比DevOps还早,谷歌的副总裁,同时也是谷歌站点可靠性工程创始人的Benjamin Treynor Sloss却说可以把站点可靠性工程视为“DevOps带了一些特殊扩展的具体实现”。站点可靠性工程有八个原则:可用性、延迟、性能、效率、变化管理、监控、紧急响应和容量计划。这本书很大篇幅都在讨论站点可靠性工程团队该如何与这些核心原则保持一致,并且开展他们的工作。\
站点可靠性工程中的软件工程
\那么,用Sloss的话来说,到底什么是站点可靠性工程呢?在他看来,站点可靠性工程就是“当你请一个软件工程师去设计一个运维团队时会发生的事”。这主要源于团队的组成比例:50%到60%的站点可靠性工程师都是受过了培训的软件工程师。他们的技能和开发产品的软件工程师们一样。团队中剩下的成员们技能也相似,但是会有