• 0
  • 0
分享

一、为什么要分布式并发?

沐沐是一个性能测试的初学者,入门装备选择的是开源、轻量、易上手的JMeter。可是性能实践过程中,一旦进行高并发操作时就会出现以下尴尬场景,JMeter客户端卡死、请求错误或是超时等,导致很难得出准确的性能测试结论。因此,众里寻解上百度,方知需要分布式。简单来说,分布式就是将一次大的操作分布在多个服务器上,由多个服务器来承担负载压力。

分布式并发的原理详见下图:


1.png

二、分布式并发实现步骤

1、打开Jmeter,在运行->远程启动,可以看到只有"127.0.0.1"因此首先要在主压力机上配置远程负载机的IP,配置步骤如下:

(1)Master(主压力机)在jmeter.properties中添加remote_hosts

配置路径:...\apache-jmeter-3.2\bin 路径下的jmeter.properties;

remote_hosts=127.0.0.1 后面增加远程负载机的ip和端口号,如果需要添加多个,用逗号分隔就可以;

例如:remote_hosts=192.168.**.***:1099,192.168.**.***:1099

(2)Slave(远程负载机)在jmeter.properties中添加server_port:

server_port=1099

server.rmi.localport=1099

(备注:这里的端口号可以自定义,只要与主压力机里面配置的一致即可)

(3)Slave(远程负载机)启动Jmeter-server,启动成功后如下图所示:

1.jpg

2、配置完成后重启主压力机,查看远程启动,可查看到配置的远程负载机IP,如下图:

1.jpg

3、添加一个接口,进行远程启动

(1)添加一个线程组,然后添加一个Sampler里的HTTP请求;

1.jpg

(2)以百度为例,添加监听器->查看结果树

1.jpg

(3)点击运行->远程全部启动,运行后查看结果树:

2.jpg

截止目前,分布式并发的配置已经完成,如果需要添加多台远程负载机,重复以上操作即可。

三、遇到问题

配置过程虽然很简单,但是也不是一帆风顺,在远程启动时遇到了拒绝链接的问题,如下截图显示:

1.jpg

遇到这种情况时,可能存在多种因素,可以参考以下步骤逐一排查

(1)远程负载机的Jmeter-server是否启动成功;

(2)远程负载机是否处于联网状态;

(3)防火墙是否处于关闭状态

(4)主压力机和远程负载机的Jmeter版本是否一致;

沐沐在实战过程中也出现了这个问题,经过一番排查终于找到问题原因,是因为远程负载机上启动JMeter时,用jmeter.bat进行的启动,而不是jmeter-server.bat;希望大家在不要像沐沐一样,犯这样低级的错误。还是那句老话"The more we share,the more we have",将分享进行到底...


版权声明:本文出自51Testing原创,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 一、 规范性能测试实施流程的意义规范的性能测试实施流程能够加强测试工作流程控制,明确性能测试各阶段应完成的工作,指导测试人员正确、有序的开展性能测试工作,提高各角色在性能能测试中的工作效率。本次分享的性能测试实施流程是性能测试开展的” 指导方针”,希望帮助您可以早日成为性能测试” 达人”。二、 性能测试实施流程性能测试流程分为五个阶段,分别是【需求调研阶段】→【测试准备阶段】→【测试执行阶段】→【测试报告阶段】→【测试总结阶段】。每个阶段做什么事情?重点关注什么?1. 需求调研阶段1.1. 阶段概述调研阶段的主要工作为:组建工作小组、项目创建、需求分析、模型构建、定制性能测试详细实施计划。重点...
            0 1 1185
            分享
          •   在正在举行的小米 SU7 北京车展发布会上,雷军公布了目前小米 SU7 购买者的一些数据。  雷军称,目前小米 SU7 女性购买者占比高达 28%,女性车主预计占比 40-50%;BBA 用户购买者占比 29%,苹果用户购买者占比 51.9%。  雷军还表示,小米 SU7 正在全力扩充产能,4 月 18 日标准版、Max 版开始交付,5 月底 Pro 版开始交付,6 月份月交付超过 1 万台。他透露,小米 SU7 今年交付目标 10 万台,今年销售门店覆盖 46 城 219 家,服务中心覆盖 86 城 143 家。作者:远洋原文链接:IT之家(ithome.com)
            0 0 716
            分享
          •   今天,我们来聊聊如何成为一枚初级测试工程师?  最近经常收到小伙伴的私信问打算进入到互联网这个行业,如何转行软件测试?学测试难吗?以及谈到自己非计算机科班毕业,半路转行没什么经验,比较迷茫,不知道学习路线,以及需要学习哪些课程。甚至询问是否需要报个培训班学习,自学就可以吗,还是必须报班等问题。  首先我想说,初级软件测试学习和入门的门槛都是很低的,比起开发岗位来说,要容易得多,只要知道学习路线以及怎么学之后,自学是完全可以入行的。所以,今天就来跟大家探讨一下这个问题。  我浏览了 BOSS 直聘、拉勾网、猎聘网等招聘网站上目前关于初级测试工程师的招聘要求,以及薪水待遇等信息。以本人所在的城...
            0 0 455
            分享
          • 金三银四马上来了,又是一波离职高峰,很多小伙伴已经开始投身跳槽的准备中了。大家选择跳槽无非是想增加自己的工资收入,所以面试过程中的谈薪环节就显得尤为重要,谈的好与不好,未来整个的薪资水平都可能受影响。那面试中,当问到“你的期望薪资是多少?“应该如何回答呢?作为一名软件测试资深面试官,站在求职者角度,从以下3个方面聊一聊:了解市场薪资行情清楚薪酬结构面试如何谈薪1、了解市场薪资水平案例: 小柠,工作2年,上家薪资是8000,跳槽后9500,跟身边朋友和前同事相比,个人很满意。 结果入职后发现,比自己晚入职技能也不如自己的新同事,薪资却过万,顿时心里不舒服了。一般来说,跳槽涨薪可达10%-30%,...
            13 13 2926
            分享
          •   一、JMeter  Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。  1.1、JMeter的作用  1.能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。  2.完全的可移植性和100% 纯java。  3.完全 Swing 和轻量组件支持(预编译的JAR使用 javax.swing.*)包。  4.完全多线程 框架允许通过多个线程并发取样和 通过单独的线程组对不同的功能同时取样。  5.精心的GUI设计允许快速操作和更精确的计时...
            0 0 450
            分享
      • 51testing软件测试圈微信