开篇词丨“老板,之前咱TPS是100,我优化完是10000”
开篇词丨“老板,之前咱TPS是100,我优化完是10000”
讲述:高楼
时长12:10大小11.14M
学习性能测试的方法到底是什么?
性能工程师的前景到底在哪里?
赞 113
提建议
精选留言(68)
- 一步2019-12-17看了 老师的开篇,感觉老师是实干派 总体来说就是:别整那么没用的,上测试,出分析,做调优共 2 条评论46
- Leo2019-12-18有全链路压测相关的实战吗?
作者回复: 这个话题说大不大说小不小,在这个专栏中,我没打算讲全链路压测相关的话题。 不过既然这里问到,我大概描述一下我不打算写的原因。 全链路压测是两个部分。全链路 和 压测,压测部分要做的就是有清晰的标识,而全链路就是系统要做的链路改造。 从技术层面说,不管是使用同样的硬件做旁路应用,还是改造已有应用做链路标识识别,技术的实现手段都是成熟的。 我最近在设计一个全链路压测的模拟系统,开发很快就能做得出来。 但是全链路的难点在系统的庞杂和团队之间合作的推进。所以全链路是个管理协调的难度大于技术实现的事情,并不像很多人所说的那么高高在上。
共 3 条评论31 - 技术修行者2020-01-01现在带一个最近在带一个小团队做项目的底层框架设计,为业务提供基础服务。 业务端的性能测试人员的套路就是写脚本+跑压测+贴结果,没有任何分析,直接发给所有人。因为给出的只是全链路的结果,我只能是把它分成不同的部分,例如前端、业务服务、基础服务等,然后分析瓶颈到底是什么原因造成的。 因为基础框架提供了数据访问服务,压测过程中发现用户到达一定规模后,某个业务相应操作时间在1分钟以上,所有人都指向了基础服务做的不好,影响了团队的士气,于是我做了一系列操作,抓取日志、分析日志,发现业务使用的SQL语句,在极端情况下,在dn客户端也需要执行1分钟以上才能返回结果,和基础服务没有关系,又是一通撕。。。 作者的专栏立意很好,希望能学完这个专栏后,更好的应对可能出现的各种性能问题。展开
作者回复: 你说的这个场景。我也见过很多。 一看就是有实际的工作经历的。 性能的价值的具体体现,在你说的这个点上就非常非常重要。要是性能团队能直接说哪个环节上哪个代码段哪个配置哪个sql有问题,不仅可以减少沟通成本,体现性能的价值,也会得到其他技术团队的尊重。
21 - zuozewei2019-12-16性能测试通过概念、模型、观测、实验等手段来进行问题的剖析。其涉及范围之广,从压力工具、操作系统、开发语言、数据库、消息队列、中间件、网络、压力工具等各个方面。通常还需要深入的理解各种原理,特别是在一些重点细节上,往往需要有超出一般的认识和方法。
作者回复: 深得真传呀。哈哈。
共 3 条评论19 - 斜月浮云2019-12-17老板说,小伙子写的代码太差了,浪费了硬件99%的性能,太败家了,还得专门花时间优化才能上线😂
作者回复: 哈哈,要没有写代码差的小伙给我们提供更多工作内容,我们的价值体现就要少一部分了。
共 2 条评论17 - David.cui2020-01-27我是一个DBA,在某个金融客户的上线之前的压力测试中,tps可以到8000多,但是cpu使用率达80~90%。客户联系我到现场之后,发现大量的cpu资源都是sys%部分。我们经过反复测试发现数据库的参数没有问题,是操作系统架构需要调整,调整之后 cpu使用率不到50%,tps达到了10000+
作者回复: 那真是太棒的优化结论了。为你点赞。
共 3 条评论14 - wwwricky2019-12-24老师,二八原则/响应时间258/TPS拐点 为什么是无用的呢?这个没看懂。
作者回复: 后面篇幅中会有说为什么它是无用的。在这里稍做解释。 二八原则,做为一个宏观经济学的统计结论,它对一个特定的性能项目并没有实际的参考价值。因为一个项目中用户的高峰周期完全取决于业务的特性,当没有分析业务而直接使用二八原则来套路,基本上都会和实际的系统有较大偏差。 响应时间258这个已经在后面的篇幅中解释的很清楚了,它做为古老的音频缓冲统计数据,对现在的业务应用基本上没有参考价值,技术的发展和业务的特点对响应时间的要求会更会具体。 TPS拐点之所以说无用是因为在很多系统中,拐点都不是明确出现的,TPS是缓慢上升的,有弧度的,而不是有明确拐点的。
8 - 月半虫工🍧2019-12-18一直想学性能测试,但靠看书自学完全入不了门,希望老师能带我入门。我也会坚持做笔记,下面是我的幕布笔记链接:https://mubu.com/doc/dL5rtL432Z
作者回复: 多交流。
共 2 条评论7 - Watts2020-05-13最初写php,今年在写java,最近负责公司业务的性能测试。性能调优比写代码更有趣,当通过自己的实践让tps,响应时间的提高,避免错误率。有种玩游戏闯关的感觉。
作者回复: 非常对呀。我也经常有这种玩游戏时拿钥匙的感觉。哈哈。
6 - 琉姩兮珞2019-12-23听了第一讲,决定入坑学习,哈哈哈
作者回复: 入坑才发现坑是填不满的。从此人生进入另一填坑阶段。
共 2 条评论6 - bolo2019-12-24想通过学习性能测试的时候, 把相关的技术栈补一补。 目前停留在“做脚本和参数、压场景、出报告”的地方,想向前走一走.....
作者回复: 树挪死,人挪活。 总得往前走一步,才能不断进步。
5 - jy2021-01-25答疑区看到老师说:全链路就是系统要做的链路改造。 链路改造是指?
作者回复: 这话题就大了。像: 1. URL染色; 2. 应用threadlocal改造; 3. 数据影子库; 等等等。
4 - 吕作晶2020-03-22为什么错误的概念却流传更广呢?
作者回复: 当没有tcpip协议栈的时候,OSI就是王道。 错误的概念流传的原因有多种。我所理解的是: 1,性能测试理念来自于国外。而国外文化跟中国有很大差别。当没有系统理念里,某一个论调被翻译过来,产生理解上的偏差,本来在英语世界里只是一个简单的实验说明。而到了国外却被当成了公理对待。 2,国外也没有完整的性能测试理念。到了国内后,断断续续的信息收集和实际场景被赋予了新的理解。而当初理解的人也只能摸着石头过河。而后来测试领域的发展也没有归整。 3,这些理念看似合理。而在实际工作中没有价值时,只能跟着感觉走。 4,在实际项目中其实并没有人真的按理念执行了。只是先做完应付的工作。 5,由于一些培训机构为了赚钱,进军新领域是比较容易赚钱的方式。而实际上操作时也只能使用已有的信息,导致没成功的理念越传越远。 个人理解,仅供参考。
共 2 条评论4 - Geek_6a9aeb2021-01-22如果后续有提供可以方便提供搭建重现性能的瓶颈的环境就好了,期待下个专栏,光听老师的音色就知道是全网最好听的
作者回复: 性能环境是非常复杂的。不像其他的技术行业,弄一个虚拟机就能跑起来。性能的环境是要一套大环境。所以没办法提供。 你可以自己动手去搭建一个,取决于你有多少的硬件资源。 下个专栏正在码字中。 多谢肯定声音。哈哈。
共 2 条评论3 - 于文玮2020-03-19一直做功能测试,一直没有突破,愁人啊
作者回复: 学习是唯一的突破的途径。
3 - 小老鼠2019-12-171、性能测试工程师就是全栈工程师喽,真正业内有多少可以达到?2、性能测试工作需要其他人参予吗?3、分布式系统与单机系统在性能上有无差别?若有差别,差別在哪儿?
作者回复: 1,不一定是一个的需要全栈,一个团队能做到即可,甚至虚拟团队也可以,只要做好项目管理。 2,当然是需要的,主要看性能团队本身能做到什么程度。程度越深,和其他团队的沟通越顺畅。如果连推进性能问题定位分析的能力都没有,那就只能做性能验证了。 3,显然这两者有很大差别。分布式系统首先要做的就是响应时间消耗的监控拆分。定位到某节点后再定向分析。
3 - ray2019-12-17“让性能变得有价值”,让性能测试的价值不再体现在一份份报告上,而是实际提高了多少tps,缩短了多少响应时间,降了多少cpu。最近在做性能测试,一头雾水,工具使用没问题,关键是怎么分析这些数据
作者回复: 后面的篇幅之中,会有写分析的细节。性能中最核心的就是分析监控数据。而监控数据,又没有一个标准的值。因为环境、业务不同,计数器的值会要求不同,所以只能根据实际场景分析。
3 - 善行通2019-12-16感谢老师分享性能知识,从业务模型到实地开展工作,从基本功夫到工作价值体现,任何理论只有落地才能产生价值,才是有用得理论,不能拿书本中那些理论做对比,咱们从事工作分两方面产生价值,一方面提高效率,一方面提高质量。老师从这两方面下手,解决根本问题,让从事这方面得工作人员展示自己价值。
作者回复: 深得真传了。哈哈。
3 - 拥抱黑夜的白天2020-05-24本节课程最大的感悟就是正确认识性能工程师,不仅仅是一个做测试写脚本做参数压测的职业,而是具有更加深刻的意义和价值——能够通过测试的结果进行分析,找到原因得出结论,并且能够给出意见建议来对项目进行调优,使项目的性能得到提升。这需要我们不断的充实自己的业务领域宽度和深度,精确的分析和从业经验不断积累来实现。
作者回复: 说的非常对呀。
2 - 一条好汉2019-12-20等了好久出来就买了课程,喜欢老师的风格,我也初入性能测试大门,希望学完课程能在调优分析更近一步。
编辑回复: 如果觉得好的话,帮忙推荐给你身边的朋友
2