负载测试是确保您的网站或应用程序在重负载下不会崩溃的方法。 当进行负载测试时,您需要做的基本事情之一是扩展您正在测试的虚拟用户数量。 根据您的业务需求,您可能需要扩展到庞大的数字,甚至可能达到1,000,000个用户。
这里有5个方法可以帮助你进行性能测试扩展:
许多情况下,用户数量巨大增长是可以预期的。 例如,预计在大型游戏(2月5日,星期日)的食品交付地点或直播电视网站的当天,零售店的黑色星期五,流行音乐开放票购买选择的日子,交通高峰 节日或电影,发布新应用或网站的第一周,等等。
因此,我们建议您至少提前几个月开始对大用户量进行负载测试。 (担心你离开你的负载测试太晚了?我们可以帮助)。 确保您有足够的时间运行测试,找到您的断点,解决任何需要修复的瓶颈,然后再次运行测试,以确保一切正常。 您应该测试的用户数量取决于您的业务需求和您的期望。
无论如何,我们建议您将负载测试集成到连续集成过程中。
记录您的用户场景是创建测试的最简单和最有用的方法。 虽然JMeter提供录音选项,最有用和易于使用的记录器是BlazeMeter Chrome扩展,是免费的。
记录负载测试场景:
- 从Chrome商店将recorder添加到Chrome
- 键入测试名称
- 点击“记录”按钮,并浏览您想测试的场景。
- 点击“停止”按钮。
- 如有必要,进行编辑- 导出到.jmx并上传到JMeter,或单击“播放”在CA BlazeMeter中打开它。
建议对任何的负载测试都要进行测试场景记录。 但是,扩展到高人数需要一些时间,因此您需要简化尽可能多的进程。 recorder就是这样做的。
负载测试会占用了大量的资源,但大规模扩展后,会占用更多的资源。 为了确保您的资源不会因为无关内容的瓶颈而发生崩溃。 为此,请删除任何不必要的数据。
例如,我们假设您不会在JMeter上运行大规模测试(可能在单个机器上支持几百 - 1K个用户),因此删除侦听器(但在JMeter上运行测试时请务必保留)。
初次进行大量用户的测试可能会成功,也可能会导致系统崩溃。 原因可能是本身的测试环境没有搭建好,或者因为大量用户。
以上情况,你想要找出系统何时和为什么崩溃。 我们会建议您逐步开展测试,并适度调整虚拟用户数量。
- 通过在JMeter 上首先设置 1个线程的(虚拟用户)启动本地测试,以确保测试正常工作。
- 手动将线程组中的用户数更改为几十或几百。 如果正常运行,请继续添加用户。
- 达到一定数量的用户后,本地计算机可能无法处理负载。 如果您仍然需要增加用户,您可以使用CA BlazeMeter(在云中的一种JMeter)等工具继续扩展。
- 在SandBox模式下运行测试,以确保正常工作。
- 逐步扩展到您需要的用户数量。 达到单个控制台可用的最大数量后,请转到CA BlazeMeter的多重测试选项,并复制测试,直到达到所需的用户数量。 在这里阅读更多。
通过逐渐添加用户,您可以确定您的中断点并识别瓶颈,如高内存使用或不正确的DB使用。 修复瓶颈并继续测试,直到达到高于您决定处理的用户数量的断点。
当进行负载测试时,CUP和内存的使用率是我们看到的两个最重要的指标。 你需要确定系统不能逾越的使用级别,但是如果CPU达到75%和85%的内存,你就达到了你不能逾越的红线。
要监视系统的运行状况,请查看负载测试系统提供的报告,并分析不同的KPI以及它们之间的相关性。 CA BlazeMeter提供了Engine Health报告,但您也可以在Taurus(一个开源测试自动化工具)上分析这些参数。
在每次运行测试后,实时分析结果非常重要。 这些确保您全面了解您的系统的能力,弱点和瓶颈。 它们还让您看到在更改系统时会发生什么,例如添加功能或更改系统的体系结构。 最后,他们让你看看你所做的修改是否真的有帮助。
确定系统能承受重负载,对于保持用户量是非常重要的。 我们希望这些方法对于您扩展高用户量能有所帮助。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。