这篇文章讲的是如何向公司上层介绍并引进SLO的概念和指标。如果你的公司还没有使用SLO,但是你发现SLO可能会很有好处,那么这篇文章可以提供一个案例来教你策略性地说服公司上层选择使用SLO。
商业影响:
- 在各个重要的用户活动(Crtical User Journeys)上记录SLO能够把稳定性(Reliablity)和可用性(Availability)直接与商业价值挂钩(dollar business value),比如99%的稳定性需要付X的价钱,99.9%的稳定性需要Y的价钱。
- 当业务在发展的时候,如果能够保证稳定性和可用性不变,那么实际上就同时产生了更大的商业价值。这种时候,技术对商业价值的影响就可以被更好地理解和量化。
技术影响:
- 设定SLO是为了帮助工程师做更好的决策,决定在什么方面需要投入更多的人力和物力,要如何投入更多的资源,要解决什么重要的问题。
- 把SLO跟商业价值绑定,也能帮助产品经理和工程师找到可以沟通的共同语言。而这个共同语言又能帮助经理和员工来计划接下来的工作重点在哪里,比如要花多少精力在减少技术债(Tech Debt),多少精力在提高稳定性(Reliability),多少精力来开发新的功能(New Feature Development)
运营影响:
- 好的SLO能够帮助开发者更有信心地开发新的功能,并且了解新的开发对于已有系统的性能、功能、稳定性、质量、甚至是客户端业务的影响。
- 设定内部和外部SLOs(或者区分内部SLO和客户的SLA),能够在用户发现问题之前找到系统存在的可能问题,并且及时修复,从而减少对用户的影响和对业务的影响。
- 利用SLO来设定预警系统,可以让监控系统自动化,并且有可以被衡量的指标。
整体来说,我们通过SLO,把技术开发的价值与和公司商业价值的保持一致,让整个公司业务更加稳定,风险更加可控,迭代速度更加快,但又不影响客户的使用体验。但是在向领导层兜售这个概念的时候,需要考虑很多方面的影响,包括战略上的,技术上的,运营上的,等等。同时,使用SLO是一个Culture Shift,是一个对公司文化有改变的事情,所以可能需要逐步推广。但是,SLO确实有很多好处,值得考虑。