问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

性能测试知多少---性能测试工具原理与架构

发布网友 发布时间:2022-04-30 04:57

我来回答

1个回答

热心网友 时间:2022-04-10 22:07

但是,性能测试不是loadrunner,所有的作者也是这么认为的。但他们在讲性能测试的时候讲的就是loadrunner有,只是讲的多少不同罢啦。 你是否觉得我对loadrunner有仇?我之所以将其分开来学,只是希望自己在学习性能测试的时候不要被loadrunner局限了而已。只是觉得在做性能测试时不要带loadrunner的思维,这样更容易把握性能测试的本质。----------------------------------------------------- 性能测试工具,从广义上讲,在性能测试过程中使用到的所有工具都可以称其为性能测试工具。从狭义上来讲,我们可以把性能测试工具分为服务器端性能测试工具与前段性能测试工具。 服务器端性能测试工具也我们测试人员通常所认为的性能测试工具。LoadRunner、JMeter、SilkPerformance、服务器端压力性能工具需要支持产生压力和负载,录制和生成脚本,设置和部署场景,产生并发用户和向系统施加持续的压力。 前端性能测试工具应用比较广泛,开发人员,前端开发人员、测试人员都会经常用到。Firebug 、fildder2、Yslow 、前端性能测试工具只需要关于心浏览器等客户端工具对具体需要展现的页面的处理过程。 服务器性能测试工具原理 性能测试工具的主要作用是通过模拟生产环境中的真实业务操作,对被测试系统实行压力负载测试,监视被 测试系统在不同业务、不同压力性能下的性能表现,找出潜在的性能瓶颈进行分析、优化。 客户端与服务器相当于两个人,通过信息来进行交流。由于初次见面不好意思直接交流,与是找来了中间传话人,客户端把信息告诉给传话人,由传话人来转达给服务器。那么服务器反馈的信息也由传话人转达给客户端。一般性能测试工具都需要录制或编写客户端行为脚本。 这样传达人就有了客户端的行为能力,从而假扮客户端来欺骗服务器,与之进行通信。有了客户端行为了传达人可以进行自我复制。从而变出N多个传达人对服务器进通信。---这个传达人的行为和能力也就是性能测试工具的基本特质。(突然觉得性能工具像第三者插足,而且是可以自我复制疯狂*的第三者,哈哈!) 对于目前流行的性能测试工具,他们的基本工作原理都是一致的。在客户端通过多线程或多进程模拟虚拟用户访问,对服务器端施加压力,然后在过程中监控和收集性能数据。性能测试工具应该具备什么的特质呢?1、工具本身占用系统资源少,可扩展性好,可用性强。 2、能模拟真实业务事务操作,在并发时能真正产生业务压力。(这一点是核心)3、对压力测试结果能很好地进行性能分析,快速找出被测试系统的瓶颈。4、测试脚本的重复性强。 服务器性能测试工具的架构 用户行为生成部分 我为什么说的这么朦胧,对于熟悉loadrunner的朋友,我说成虚拟用户脚本生成器,你更容易理解,这个脚本,我们可以录制,也可以手工编写。你不要以为这是生成用户行为的唯一方式。因为在JMeter成中是添加各种组件,通过对组件的配置来完成用户行为的,当然也可以通过录制。而在相对简陋的性能测试工具curl_loader(linux环境下的运行的),他是通过编写配置文件的形式来描述用户形为的。 我前面也有提了,虽然性能测试工具由不同的形式来描述,但他们的原理是一样的,都是通过Proxy方式来实现,具体来说,Proxy作为客户端和服务器之间的中间人,接收客户端的数据包。 压力产生器 压力产生器用于根据脚本内容产生实际的负载,在性能测试工具中,压力产生器扮演着“产生负载”的角色。也就根用户的设置,进行自我复制来生成多个客户端向服务器发送请求。对于工具来说,每复制出来的一份就是一个进程或线程,进程和线程的运行是要占用系统资源的。所以,对一台压力测试机来说能运行的虚拟用户数也是有限的。根基测试机的配置而定。那么这个时候就要通过多台测试机合作,来模拟更多的虚拟用户向服务器发请求。 那么,对于性能测试来说,很重要的一点就是产生“并发”的请求,不然就不会对服务器产生压力。那多台机子如何产生“步调一致”的虚拟用户呢?使用“用户代理” 用户代理 用户代理是运行在负载机上的进程,该进程与产生负载压力的进程或线程协作,接收调度系统的命令,调度产生负载压力的进程或线程,从这个意义上看,用户代理也是压力产生器的一部分。 调度能力 我们在做复杂的性能测试时,常常会设计各种场景,不同的虚拟用户数,不同事务的用户比例,运行时间,设置同步点等,这个时候也需要我们的测试工具有压力调度能力。从而才能更真实的模拟我们所设计的运行场景。 监控系统 监控系统是性能测试工具直接与用户进行交互的主要部分,监控系统,主要用户在压力测试过程中对各种软硬件进行监控,如对数据库、应用服务器,服务器的主要性能表现情况进行监控。用于判断系统当前处于什么状态。 当然,监控系统不是性能工具必须的部分,可以通过软硬件系统自身的监控工具或者第三方监控工具进行监控。但是否有强大的性能计数器监控系统是衡量性能测试工具是否强大的指标之一。 压力结果分析 压力结果分析工具可以用来辅助进行测试结果的分析,性能测试工具一般都能将监控系统获取的性能技术数器值生成曲线图,折线图等各种图表。通过展现性能测试过程中的各种参数指标,来供测试人员进行分析。 但这里需要强调的是,压力结果分析工具本身不能代替分析者进行性能结果分析,而只是提供多种不同的数据揭示和呈现方法而已。对于这些数据进行分析必然要依靠测试工程师对系统性能分析的知识和经验。------------------------------------------------------- 对上面介绍的性能测试工具架构的组成部分,不是第一个性能测试工具都具备,而所具备的强大程度也不相同。比如,有些性能测试工具不具备用户代理能,有些监控系统能监控的资源很有限或简陋,有些结果分析数据的呈现不够详尽等。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎么把苹果电脑安装到固态硬盘苹果笔记本可以换成固态硬盘吗_百度知 ... 营转非的车保险和私车一样吗? 功夫不负有心人的观点怎么写 用具体事实说明一个观点比如“功夫不负有心人”“虚心使人进步骄傲使... 我左腿膝盖向上10cm外侧刚发现有个硬的包很疼,表面无异样请问是什么`昨 ... 左腿膝盖外侧酸是怎么回事,右腿没感觉,是缺少什么了吗,以前一般吃几天... 膝盖处外侧皮肤麻木,皮肤容易红,外侧摸关节处略大于右腿同部位关节。去... 灰色冬裙配什么短外套 2024年信用卡诈骗罪是什么样的量刑标准 徐州启星中学好不好在徐州排第几徐州启星中学 你们觉得最好的美白方法是啥? 昨天别人骗了。很是郁闷和后悔,睡不着。结果晚上梦见自己上边挨着的牙掉了3颗。是大牙和虎牙,请问有什么 问下大家一般用什么工具监控mysql的性能 梦见自己掉了两颗牙齿,都是左边的一个虎牙、一个僿牙!是什么意思? 梦见掉了一颗虎牙和两颗大牙怎么回事? 昨天晚上梦见掉了三颗牙,一个是上面虎牙,两个是下面里头的大牙 梦见自己的大牙掉了两三颗,虎牙掉了一颗,虎牙是双层的,请问有啥说法么? 男人怎么看大象腿女生?? 大象腿,男人肚腩怎么减? 怎样减大腿 好方法让男人甩掉大象腿 请大家提供一些好听且歌词简单的流行英文歌曲 怀孕两个月可以吃猕猴桃不 男人大象腿穿什么裤子好看 近期有哪些流行歌曲简单的适合KTV的 怀孕早期每天吃一个猕猴桃有没有影响吗 男人有大屁股,大象腿,怎么办???谁能告诉我该怎么做 推荐一些简单的英文流行音乐 男人有大象腿,穿夏装短裤好不好看???男人有大象腿好不好???怎样才能去掉大象腿??? 求简单好听容易学的流行歌曲 好的追分 O(∩_∩)O谢谢 初中男生如何瘦大象腿? 梦见自己掉了一颗大牙和一颗虎牙,不疼也没有出血? 有什么好的美白方法? 如何在loadrunner中监控oracle数据库性能测试 压力测试,用的服务器是windows 2008server,数据库sqlserver,请问这两个上面最好的监控工具是什么 SQL SERVER 2008 性能监控 细节咨询; WCF有性能测试工具,跟踪监控工具吗 梦见自己办,了一张银行卡密码是零结果很不好什么壳意思? 我想问一下我办了几张银行卡? 解梦:我梦见我拿个银行卡去取钱,结果取了很多很多的钱,何解?劳烦哪位大师指点迷津??感激不尽!! 怎么样可以知道自己办了几张银行卡? 找几种常见病的西药配方。注意不是激素,抗生素。副作用要最小! 我想问我一共办了几张银行卡? 高血压降压治疗的常用中西药有哪些? 我办了很多张银行卡 感冒常用西药配方都哪几种药 中草药配方 慢性胃炎常见胃肠病的药物治疗有哪些? 奶牛常见疾病西药配方 慢性膀胱炎中医方剂? 感冒了吃西药吃不好,可以吃什么中药?给个配方,谢谢~大神们帮帮忙