slo sla

工程师希望软件系统既庞大又敏捷,能够在最高水平上运行,并且不影响安全性。 他们希望软件具有扩展能力,设计简单,易于开发和维护的能力。 他们不需要的是更多的缩写词。

SLA代表服务水平协议。 SLA通常跨越业务领域。 它们由跨法律,技术,销售和支持职能的跨职能团队组成。 在所有语言之下,冗长的条件是这个基本前提–如果该软件无法按预期运行,则我们的一位工程师将在规定的时间内对其进行修复。 本文档的其余部分是此工程职责的多层。

SLA涵盖了可接受的解决时间,性能预期,服务/服务器的正常运行时间以及无数其他参数的定义。 参数的包含和排除取决于供应商/公司所同意的可用性的良好度量。 这遭受了令人遗憾的二分法。 所有这些定义都是基于试探法和假设进行的。 很少基于观察实际用户行为或与应用程序的交互的基础。

拥有SLA并不能保证您更好地了解用户需求。 但是将它们放在适当位置具有优势。 SLA在冲突期间提供通用词汇表,并在发生争执时帮助解决。 它们帮助提供服务的公司定义其人力需求,并确定工程师的职责。

工程师必须了解SLA,这一点很重要。 他们需要了解其中的定义和参数。 它有助于使单个工程师意识到他们的职责,并创建一种意识文化。 它可以帮助工程师在设计软件系统时设计SLO,以考虑整个企业的影响。


对于工程师来说,SLO并不是那么抽象。 SLO代表服务水平目标。 工程师构建的每个软件组件都可以有效地提供服务。 该服务必须满足某些要求。 这些要求可以是通用的,也可以是非常具体的。 通用要求的示例可以是“此网关必须连接到支付提供商的API”。 特定的可能是“所有API调用中的99%应该在100毫秒内完成”。

创建SLO很快就会成为一个复杂的过程,涉及概率论,演算和其他统计方法以准确预测事件。 创建它们的一种简单明了的方法是监视用户交互,设置适当的阈值并将它们绘制到相关的分位数中。 例如,“使用app.plumbr.io时,少于1%的用户应该经历大于5 s的空闲时间”。 SLO通常来自系统预期的特定行为。 重要的是要记住,这些可能超出了分析师和产品经理的范围。

SLO是工程师的最好朋友。 它可以帮助他们定义所构建系统的重要边界。 当工程师有效地使用SLO时,它们可以帮助他们构建准确的系统。 它使工程师可以围绕体系结构考虑进行调整。 在使用相互依赖的系统时,它有助于分析可行性。 SLO还可以通过确定概述SLO时要使用的SLI来帮助工程团队平衡技术活动,权衡取舍并纳入业务考虑因素。


SLI是指标。 讲述故事的数字。 SLI代表服务水平指示器。 一些SLI(例如吞吐量,延迟,可用性和容量)非常常见。 这些指标涉及服务器如何承受负载。 您可以针对每个系统或子系统以不同的方式监视SLI。

错误的SLI选择可能会使工程师对用户的实际经验有非常错误的了解。 区分用户行为的一种方法是将它们划分为源自已认证和未认证的请求,并监视每个请求的不同参数。 读写请求可以与只读请求分开处理。 清单继续。

这些用户中的每一个都有不同的期望,因此需要针对不同的参数进行测量。 这些用户的业务含义也不同。 故障和瓶颈对接口的影响会影响不同类别的用户,这是决定在何处投入工程精力的重要方面。 如果SLI可以包括准确地衡量用户的行为,则它在更大的事情方案中起着更加积极的作用。

综上所述,
1. SLI是工程师交流有关系统的定量数据的方法。
2. SLO设计为提供使用SLI定义的一定级别的服务。 3.在了解团队采用的SLO的基础上交换SLA。 4.如果这些定义中未包括用户行为,则它们仍然存在缺陷。

感谢Priit ,阅读了草稿,并帮助编辑了这篇文章。

图标礼貌Freepik从www.flaticon.com下, CC 3.0许可。

翻译自: https://www.javacodegeeks.com/2018/12/engineers-guide-sla-slo-sli.html

slo sla

slo sla_SLA,SLO和SLI工程师指南相关推荐

  1. SLA,SLO和SLI工程师指南

    工程师希望软件系统既庞大又敏捷,可以在最高水平上运行,并且不影响安全性. 他们希望软件具有扩展能力,设计简单,易于开发和维护. 他们不需要的是更多的缩写词. SLA代表服务水平协议. SLA通常跨越业 ...

  2. 2016 年最值得程序员阅读的开源书:《全栈增长工程师指南》

    这本书来源于在<Repractise简介篇:Web开发的七天里>中所说的 Web 开发的七个步骤而展开的电子书.当然它也是一个 APP,是一本关于如何成为全栈增长工程师的指南. 编写过程 ...

  3. Prompt工程师指南[高阶篇]:对抗性Prompting、主动prompt、ReAct、GraphPrompts、Multimodal CoT Prompting等

    Prompt工程师指南[高阶篇]:对抗性Prompting.主动prompt.ReAct.GraphPrompts.Multimodal CoT Prompting等 1.对抗性 Prompting ...

  4. api如何使用_记录API:技术作家和工程师指南

    在这门有关编写REST API文档的课程中,我不只是在谈论抽象概念,而是通过直接的动手方法将REST API关联起来.首先,您将通过使用简单的天气API在站点上放置天气预报来了解API文档. 使用AP ...

  5. 推土机距离_推土机工程师指南

    推土机距离 介绍 Xanadu®项目是最初的超文本项目,是Ted Nelson的创意,也是无数聪明人经过近60年的精心而热情工作的结果. 由于开发周期长,该项目产生并使用了许多重要性各异的想法,尤其重 ...

  6. ai人工智能算法工程师_与AI时代息息相关:阿里巴巴算法工程师指南

    ai人工智能算法工程师 随着AI越来越擅长处理越来越多的计算任务,致力于开发AI的人们可能很快就会失业. 随着人工智能进入当今越来越多的技术中,有抱负的算法工程师面临着独特的困境. 一方面,他们必须竞 ...

  7. 全栈AI工程师指南,DIY一个识别手写数字的web应用

    作者 | shadow chi 本文经授权转载自 无界社区mixlab(ID:mix-lab) 网上大量教程都是教如何训练模型, 往往我们只学会了训练模型, 而实际应用的环节是缺失的. def AIF ...

  8. 10、软件质量工程师指南 - 软件项目角色指南系列文章

    第9章      软件质量工程师   软件质量工程师也是分配在项目质量控制部里的编制,对项目的软件编码质量等进行管理,与软件配置工程师相比,主要偏向于对项目的质量控制部分进行管理.虽然在项目管理过程里 ...

  9. 2021 编程-Python编码与数值计算-面向科学家及工程师指南

    本书介绍 由于编程已成为工程,科学,医学,媒体,商业,金融和许多其他领域的重要组成部分,因此对于科学家和工程师来说,在计算机编程中具有竞争基础的基础非常重要.本书向来自不同背景的学生介绍了编程,并为他 ...

最新文章

  1. 架构师技术文档:Redis+Nginx+Spring全家桶+Dubbo精选
  2. C++指针与地址详解 _0
  3. 图像的打开、修改、显示和保存示例(OpenCV 2.0)
  4. 程序员必备技能-科学砍需求
  5. 字节流转化为文件流_JAVA IO分析一:File类、字节流、字符流、字节字符转换流...
  6. python 廖雪峰数据分析统计服_廖雪峰Python总结1
  7. SQL Server 批量更新字段值为ROW_NUMBER()+列名称
  8. java中random方法取值范围_Java中的Random()函数
  9. 进制转换练习-其它进制转换为十进制
  10. “三峡水怪”的真面目竟是这个!水怪:我不要面子的吗?
  11. 敏捷开发系列学习总结(16)——给Scrum Master的十个建议
  12. ubuntu下MySQL的安装及远程连接配置(转)
  13. 基于linux的触摸屏组态软件,基于LINUX的控制系统组态软件研究与开发
  14. 单场淘汰制场次计算方法_怎样用单循环制进行的比赛计算场数
  15. 帝国cms 自动生成html,帝国CMS静态生成为一行代码教程
  16. PHP实战项目(仿糯米网)
  17. 线程池监控和动态配置
  18. 【python爬虫学习】cookie模拟登陆
  19. JDK JRE JVM三者之间的关系,以及JDK JRE包含的结构是什么?
  20. 3G时代的移动业务赢利模式分析

热门文章

  1. EEROR:Windows named pipe error: The system cannot find the file specified. (code:2)
  2. Hello Git(六)——Git钩子
  3. java并发基础(二)--- Java监视器模型、并发容器、同步工具类(闭锁、信号量)
  4. Python爬虫:爬取网络流行词制作词云
  5. FFMPEG相关功能命令(转载)
  6. OracleParameter 详解
  7. 2022年危险化学品生产单位主要负责人上岗证题目及在线模拟考试
  8. Android T startingwindow流程梳理
  9. Perl数组和hash相关函数
  10. 奇虎360今天发布了未经审计的第二季度财报