oralce load的时候使用触发器会导致load慢吗_你真的了解性能压测中的SLA吗?

作者简介:襄玲(花名),阿里巴巴技术专家,PTS 研发,近期主导整理和推动云时代性能压测的思想和标准,云计算性能测试国标项目组成员,内部稳定性保障系统之预热系统负责人。

本文是《Performance Test Together》(简称PTT)系列专题分享的第6期,该专题将从性能压测的设计、实现、执行、监控、问题定位和分析、应用场景等多个纬度对性能压测的全过程进行拆解,以帮助大家构建完整的性能压测的理论体系,并提供有例可依的实战。

本文主要介绍如何正确的使用SLA来确定备容的目标,同时提高压测效率。主要分为理论和实践两个部分。

SLA无处不在

在云计算时代,越来越多企业的服务迁移到云上,各大云服务厂商有自己服务发布的SLA,比如阿里云的ECS服务器/RDS服务/REDIS服务等,都有对应的SLA,SLA是服务提供商与客户之间定义的正式承诺。

除了云服务厂商,提供各种服务的APP/网站,如果在客户在购物时无法下单/或者在周末刷着小视频的视频打不开了,这个会严重影响用户的体验,如果故障出现的时间比较久,会流失一大批的客户,给业务带来损失。那么,如何衡量给客户提供的服务质量呢?进而如何衡量系统的稳定性呢?毋庸置疑,也需要统一的语言SLA。那么,具体什么是SLA呢?

在新系统上线,大促以及系统面临大的架构调整等各种场景中,架构组以及开发人员,需要提前为系统进行备容,对系统进行性能压测,在压测过程中,与SLA又有什么联系呢?

SLA定义

服务级别协议(英语:service-level agreement,缩写SLA)也称服务等级协议、服务水平协议,是服务提供商与客户之间定义的正式承诺[维基百科定义]。SLA的概念,对互联网公司来说就是网站服务可用性的一个保证。

SLA包括两个要素,一个是SLI,一个是SLO,其中SLI定义的是测量指标;SLO定义的是服务提供的一种状态。

SLI:SLI是经过仔细定义的测量指标,它根据不同系统特点确定要测量什么,SLI的确定是一个非常复杂的过程。SLI确定测量的具体指标,在确定具体指标的时候,需要做到该指标能否准确描述服务质量以及该指标是否可靠。

SLO:SLO(服务等级目标)指定了服务所提供功能的一种期望状态,包含所有能够描述服务应该提供什么样功能的信息。一般描述为:每分钟平均qps > 100k/s;99% 访问延迟 < 500ms;99% 每分钟带宽 > 200MB/s。

设置SLO时的几个最佳实践:

  • 指定计算的时间窗口

  • 使用一致的时间窗口(XX小时滚动窗口、季度滚动窗口)

  • 要有一个免责条款,比如:95%的时间要能够达到SLO

SLA以面向人员的维度区分,可以划分为以下两个维度。

第一:业务维度:客户对这部分的指标最有体感,直接与用户的体验好坏挂钩。

  • 例如,响应时间,错误率等。有统计数据显示,如果响应时间大于1s,80%的用户就会流失掉;错误率指标,是对功能正确性的保障,如果开始有业务错误,那么客户都无法直接完成期望的操作,流失也是避免不了的。这部分的指标直接影响用户的体验。

第二:服务侧维度:描述的是服务端的指标,这部分指标主要是面向开发以及测试人员的,为了在发生问题的时候,可以快速定位问题。

  • 比如,ECS/RDS等的系统指标,包括 CPU/LOAD等。

压测中的SLA

在进行性能压测设计阶段,有一个重要的环节是确定“性能压测通过标准”。缺少了这个标准,意味着压测可能是没完没了的,谁都不知道什么时候该结束,影响性能压测效果,浪费人力财力。所以需要通过“性能压测通过标准”中一系列量化下来的指标来确定,压测结果是否符合预期,可以停止了。这个"标准"的来源,可能是来自业务方的期望,研发组对系统的性能期望等等,最终整理汇总下来的我们称为压测中的SLA。这个SLA与产品对外的SLA有紧密联系,但是又存在区别。联系就是,系统对外的SLA是压测中的SLA的重要来源,而区别就是,压测中的SLA可能会涵盖更多更细的指标,而对外的SLA并不关心这么多细节。

在正确压测吗?

在压测中,看似一个简单的业务请求,实则后端是复杂的系统架构,比如统一接入层/容器层/存储层,即使容器层,也涉及到了很多不同应用/不同服务,面对纷繁复杂的架构,如何快速判断压测结果是否满足了业务需求?如何快速判断是否达到了系统的水位不能再往上施压了呢?

作为备容的一份子(开发或者测试),可以想象一下,常态是怎样的?

一声号令,开始压测!好了,A开发看A系统,B开发看B系统,C开发看网络层,D测试看压测结果等。大家手忙脚乱,这个时候,有人在群里一声喊,我的系统扛不住了,停止吧(当然还有一种风险,是不是这位同学的误判呢)。好的,这个时候压测停止。当然这种还是比较好的情况,而有些压测场景,就只有一个测试同学,他怎么分工呢?一会看看压测结果,一会看看A系统,一会看看B系统,忙得不亦乐乎。

这样压测能否达到效果,当然能。但是这样的状态是最好的一种状态吗?当然不是!这个时候SLA就派上用场了。

  • 首先,开发/测试/业务同学在压测之前,对齐SLA指标,即意味着明确系统需要持续提供的服务能力,以及系统的整体水位,减少后续的沟通流程,大家都以此目标备容。

  • 其次,配置好SLA之后,压测的负责人则只需要重点关注是否存在SLA告警,如果连续告警则说明系统已经扛不住了,直接停止压测或者由SLA直接停止压测。对于压测的小伙伴来说,省时省力,既不会漏掉一些指标,同时也不会浪费压测时间。

f0589f69a2da244a49fde7685e301c95.png

如何在PTS中正确使用SLA

想象一下,开发同学都在忙,只有“我”一个测试人员有时间全盘盯着压测。压测起来之后,直接把不合格的业务维度数据以及系统维度数据,统统通知给“我”,“我”只是决策要不要停止压测,同时直接产出系统容量水位报告,这样是不是爽歪歪?PTS就提供了这样的功能,即设置SLA。设置SLA需要基于采集到的各种指标,采集的指标越丰富,则SLA越丰富,越能满足不同业务的需求。

在具体使用中,首先了解PTS提供的指标,然后选取与自己业务相契合的指标并设置对应的阈值,最后进行压测。

首先,了解一揽子指标

监控指标,可以分为客户端相关指标,即业务维度指标;另一个是服务端相关指标。

  • 客户端监控指标,是最直观的判断系统提供的服务是否满足了业务的诉求,PTS提供了RPS/请求失败RPS/响应时间等指标。

67ba761e30db04663e41e9cc07c1a43e.png
  • 服务端相关指标,则是从研发人员角度区分的,一方面服务端系统的表现会直接影响客户端的各个指标,是联动的。另一方面,在客户端或者服务端出现问题的时候,可以更加方便的定位到问题。PTS服务端指标,包含了SLB/ECS/RDS等相关组件的监控数据。

ae54e06a85a20579739e926912880cfa.png

第二,选取核心指标并设置阈值

  • 首先,客户端的SLA指标包含了 RT/RPS/成功率三个指标,分别从 响应时间/可用性以及访问负载 描述了客户端的访问是否正常,直接反映了客户的使用体感,以及提供的核心服务是否在提供可持续性可用的服务;客户端的指标通常需要测试人员与业务方根据具体的业务具体设定。

    • 成功率是一个衡量系统是否可用的核心指标。同时成功率优先考虑的是业务成功率,若未设置业务成功率,则是code码等默认的成功率。

    • RT反映了客户访问网站的速度,一般情况下,互联网用户都不是特别有耐心。KissMetrics 的研究结果显示,“1 秒的网页响应延迟可能会导致转化次数减少 7%”,“47% 的消费者都希望网页能够在 2 秒内加载完毕”。

    • RPS则是系统能承载的最大的RPS,也即系统容量最大水位。

3a67f0fe3dda9b77a8ec5ea97af07c49.png
  • 其次,服务端的指标,包括了SLB/ECS/RDS 三个层面的指标,每个层面的指标,由具体组件提供服务的特点决定。例如ECS指标包括 CPU/内存利用率/LOAD ;SLB指标包括 丢弃连接数/异常后端server数;RDS指标包括 CPU/内存利用率/IOPS/连接利用率;这部分的指标大部分情况下由开发人员确定,有个大的规则,比如CPU一般不超过80%,LOAD不超过核数的1.5倍等,具体情况具体分析。

5d07fbf30a764addf37e0dc282cb3aa6.png

第三,选择好指标,以及为指标设置好对应的阈值之后,就可以放心的压测了。在压测中,如果触发了设定的SLA则进行报警,或者直接停止压测。同时还会有事件的汇总信息。

a435d11e89119e461e6d42d1f2edd459.png

这样,通过前期各方对齐相应的SLA指标,并且在PTS中设置SLA,既可以对齐目标,又可以解放压测过程中的人力,很直观的看到哪些指标达到了阈值。未设置SLA之前,大家手忙脚乱的观看各种指标数据,生怕漏掉,而加了SLA之后,就可以喝着茶把压测做完。同时,除了通过设置SLA帮助小伙伴们更好的提高压测效率外,我们还会将SLA与智能压测相结合,大家敬请期待。

c41b3bb6a7b3fe5e366f20dbc9dd1520.png

小结

SLA无处不在,本文主要从SLA是什么,压测过程中设置SLA的意义,以及如何正确使用SLA进行了简述。正确利用并设置SLA,让压测不再手忙脚乱。有不同意见处请指正,谢谢!

高可用架构

改变互联网的构建方式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/507070.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

arduino 停止程序_极路由1S OpenWrt开机自启程序及串口调试

如何给openwrt添加启动项&#xff1f;首先在/etc/init.d中创建一个文件&#xff0c;在CRT终端中直接用vi命令即可&#xff0c;自行创建startCamera文件&#xff0c;如下图所示。vi编辑器中输入下图所示内容&#xff0c;START50表示系统启动的优先顺序&#xff0c;数字越小越优先…

隐藏鼠标指针_Mac鼠标光标消失怎么办?苹果电脑鼠标指针不显示的解决方法

在小编使用mac电脑的过程中发现&#xff0c;鼠标光标会偶尔在Mac上消失。这种情况完全是随机的&#xff0c;任何时候都有可能发生。经过几次之后小编发现&#xff0c;当使用诸如Photoshop之类的大型软件并连接多个显示器时&#xff0c;鼠标光标可能消失的几率最大。或者使用Saf…

realtek网卡mac硬改工具_七彩虹联合Realtek发布粉色固态硬盘 首发评测

七彩虹是PC行业领先的科技企业&#xff0c;其中在板卡领域是大陆第一的品牌&#xff0c;而在存储领域也常常被行业称为四大金刚之一。小螃蟹瑞昱(Realtek)是领先的专业IC设计公司&#xff0c;其中广为大家所认知的是网卡芯片、声卡芯片——这两个领域几乎是霸主地位。同时在WiF…

微型计算机继电器控制,可编程控制器与微机及继电器控制的区别 -解决方案-华强电子网...

1. PC与MC控制的区别简而言之&#xff0c;MC是通用的专用机&#xff0c;而PC则是专用的通用机。从微型计算机的应用范围来说&#xff0c;MC是通用机&#xff0c;而PC是专用机。微型计算机是在以往计算机与大规模集成电路的基础上发展起来的&#xff0c;它最大特征是运算速度快&…

计算机与自动化专业有哪些学校,全国自动化专业大学排名

自动化专业大学排名已经公布啦&#xff0c;下面由出国留学网小编为你精心准备了“2020自动化专业大学排名公布”&#xff0c;持续关注本站将可以持续获取更多的考试资讯!2020自动化专业大学排名公布自动化专业最好的大学有哪几所&#xff0c;中国哪些本科大学自动化专业实力最强…

用友无法打开计算机的ufnet服务,服务器安装完毕登陆正常,但是客户端安装完毕,重启以后,用友通无法正常启动,手工在服务里面启动,提示‘服务无法启动或依存的标记被删除’...

问题现象&#xff1a;服务器安装完毕登陆正常&#xff0c;但是客户端安装完毕&#xff0c;重启以后&#xff0c;用友用友T3服务无法正常启动&#xff0c;手工在服务里面启动&#xff0c;提示‘服务无法启动或依存的标记被删除’问题模块&#xff1a;系统环境关键字&#xff1a;…

高中发表在论文计算机方面,高中计算机教学论文

高中计算机教学论文引导语&#xff1a;人们的生活已经离不开计算机&#xff0c;计算机已走进千家万户&#xff0c;由此可见学好计算机是一件非常重要的事情&#xff0c;那么相关的高职计算机教学论文要怎么写呢&#xff1f;接下来是小编为你带来收集整理的文章&#xff0c;欢迎…

计算机控制lc72131,lc72131(1)

----------------------- Page 1-----------------------LC72131锁相环频率合成器概述与特点LC72131 是一种锁相环频率合成器。该电路的特点如下&#xff1a;1.高速可编程分频器FMIN&#xff1a; 10--160MHz……………双模式预分频(内置二分频器)AMIN: 2--40MHz ……………双模…

做手游的计算机配置要求,原神pc配置要求高吗 最低什么配置能流畅运行​

从最新消息来看&#xff0c;《原神》将于9月15日开启PC版技术开放性测试&#xff0c;是面向所有玩家的&#xff0c;不删档&#xff0c;本质上你就可以将其理解为正式上线了。原神是一款多平台、多数据互通的游戏。但显而易见的是PC版的原神拥有更高的画质和游戏性能&#xff0c…

HTML入门小站,Phaser

入门教程&#xff0c;我可不会讲什么概念&#xff0c;我只会讲一个入门例子&#xff0c;通过这个例子&#xff0c;你就知道phaser有多么强大&#xff0c;而照着这个例子做&#xff0c;你就能知道怎么使用phaser了。需要说明的是&#xff0c;这个就是phaser官方的一个入门的案例…

h2 可视化界面能添加 添加表_Excel只能做表格?那是你不会用!10分钟做出高大上可视化图...

很多公司都要求员工熟练的掌握Excel。But&#xff0c;绝大多数人所谓的熟练使用Excel&#xff0c;估计也只会一些简单的表格和知道加减乘除、求和吧&#xff01;再难一点&#xff0c;估计就真的把自己难倒了。讲真&#xff0c;Excel还是很牛的&#xff0c;只是你不会&#xff0…

戴尔电脑怎么安装一级计算机,手把手教你戴尔笔记本电脑重装系统教程

随着生活质量的提高&#xff0c;现今基本上人人都拥有一台专属于自己的笔记本电脑。但要是说起笔记本&#xff0c;那dell笔记本可是一个不错的品牌呢?所以小编今天要给大家说的知识点就是关于Dell笔记本怎么重装系统的内容。有兴趣的可以学起来哦&#xff01;最近小编发现有小…

量子计算机通用程序,量子计算机程序具有“通用性”?基于拓扑量子纠错码的量子计算机...

原标题&#xff1a;量子计算机程序具有“通用性”&#xff1f;基于拓扑量子纠错码的量子计算机不管量子计算机的内部是由什么组成&#xff0c;量子计算机的快速计算都可以归结为应用于量子比特的简单指令序列&#xff0c;即量子计算机内部的基本信息单位。无论这台计算机是由离…

指纹机和计算机无法连接,考勤机怎么连接到电脑?考勤机连接电脑之后操作指南!...

考勤机&#xff0c;主要是用来将员工的出勤基本情况记录以及统计下来的机器。同时能够根据员工的工作上下班时间&#xff0c;详细地统计出加班时间、早退、迟到、旷工等出勤的情况。我们在统计具体的数据情况时候&#xff0c;就需要将考勤机与电脑进行联机&#xff0c;这样更加…

canvas转盘-拯救选择困难

转盘-拯救选择困难效果图简介代码效果图 简介 每到饭点就纠结吃什么&#xff0c;不如直接roll点。 在词条框中输入选项&#xff0c;选项用逗号&#xff08;中英都可&#xff09;隔开。点击设置词条&#xff0c;会根据词条&#xff08;没有输入则获取代码中的默认词条&#xf…

ue4中在物体上加ui_UE4 物体位置同步相关源码分析浅谈

前言多图, 不想在源代码写注释, 不想贴代码块, 看的不清楚版本4.21混4.22, 区别不大文章属于旧有文章搬运, 之前在csdn上面2019.10.27修改一版物体位置信息同步, 或者说物体的移动同步, 是一个很大的坑, 从个人目前魔改UE4位置同步后, 感觉至少要考虑以下几点位置信息的数据结构…

Prime算法生成迷宫

prime迷宫生成结果展示算法解析实现代码结果展示 算法解析 参考链接 Prime迷宫生成算法的原理&#xff1a; (1)初始地图所有位置均设为墙 (2)任意插入一个墙体进墙队列 (3)判断此时墙体是否可以设置为路(判断依据在于上下左右四个位置是否只有一个位置是路) (4)若设置为路&…

wifi密码公式计算机,求一些高数公式,做wifi密码用?

满意答案thyk72832018.06.08采纳率&#xff1a;55% 等级&#xff1a;13已帮助&#xff1a;8612人1)∫kdxkxc2)∫x^udx(x^(u1))/(u c3)∫1/xdxln|x|c4) ∫a^xdx(a^x)/lnac5)∫e^xdxe^xc6)∫sinxdx-cosxc7)∫cosxdxsinxc8)∫1/(cosx)^2dxtanxc9)∫1/(sinx)^2dx-cotxc10)∫1/√…

canvas简单五子棋

canvas简单五子棋效果思路代码效果 思路 canvans 绘制棋盘&#xff0c;绘制时候边缘预留棋子位置监听点击事件绘制落子并记录到字典中获胜判定&#xff0c;在四个方向上检测是否有足够数量的连贯棋子 代码 <!DOCTYPE html> <html lang"en"> <head…

viewBox视图缩放(1)

文章目录前言一、案例解析前言 svg 的viewBox 可以重新定义视口的显示范围&#xff0c;通常表现为平移&#xff0c;缩放内容&#xff0c;之前测试的一直是viewBox 和viewPort 之间的等比缩放&#xff0c;后来发现不等比情况与认知有些出入&#xff0c;如下 <svg width&quo…