51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2517|回复: 0
打印 上一主题 下一主题

[原创] 掌握这个方法,测试服务器性能不在话下(上)

[复制链接]
  • TA的每日心情
    无聊
    昨天 09:34
  • 签到天数: 1052 天

    连续签到: 2 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2020-11-16 09:23:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    摘要:如果集中测试一个Web服务器的性能表现,遇到了一些瓶颈,那么 利用JMeter的分布式测试配置,就可以很轻松的解决。
      应用场景:设想要集中测试一个Web服务器的性能表现, 我们用一台机器模拟上千个用户不断地访问被测试的服务器,可能会遇到一些瓶颈,模拟的用户不够,服务器设置了安全措施、拒绝接收(当有超量的数据来自同一台机器在短时间内,服务器就会认为这是外来的攻击行为),测试机的配置过低、不能完成上千个用户的请求。
      解决方案:利用JMeter的分布式测试配置,就可以很轻松的解决上述问题。如下图所示,我们选择一台主机(Master),然后配置一些节点服务器(Slaves),主机发送测试运行指令,节点服务器在同一时间模拟用户对终端服器发送请求。这样总模拟的用户数量 = 单个节点用户数 * 节点服务器个数
    学习要点:

      如何配置主机与节点服务器
      如何调试测试计划,确保测试运行在节点服务器
      如何通过主机发出运行测试指令并验证测试结果
      温馨提示:如果您想按示例进行操作,一定要具备以下配置
      ·测试工具: JMeter 5.3
      ·测试机: 3 台 (本例中我安装了2台虚拟机Ubuntu做为节点,Windows 做为主机)
      主机配置 - Windows
      1.创建rmi_keystore.jks文件在主机(Master)上 (注:此文件也可以在任意节点服务器上生成,最终确保主机与节点服务器有相同的文件即可)。
      假设JMeter 5.3已经下载 且安装在主机上。打开Command Prompt并去到JMeter的\bin路径下(D:\InstalledApp\apache-jmeter-5.3\bin)。
      执行命令create-rmi-keystore.bat,依次回答提示的问题(本例中回答了第一问题,其它几个问题直接按了回车键)。最后,通过输入” yes” 确认你的回答。在问题Enter key password for ... ,可以直接按回车键。

    2.确认rmi_keystore.jks文件。
      完成以上操作以后,文件rmi_keystore.jks会显示在JMeter 的/bin文件夹下。


    配置节点服务器
      1.安装 JDK, Install JDK
      执行命令 sudo apt install openjdk-8-jre-headless 完成JDK的安装
      2.安装JMeter 5.3
      执行命令wget https://archive.apache.org/dist/ ... ache-jmeter-5.3.tgz
      执行命令 tar -xzf apache-jmeter-5.3.tgz 解压JMeter
      完上以上步骤,确认JMeter 安装成功(示例中所有命令是在Desktop 的路径下执行的,因此JMeter的解压包就显示在桌面上,您也可以根据执行路径的不同确认JMeter是否安装成功。


    3.拷贝rmi_keystore.jks 到apache-jmeter-5.3/bin 目录下

    4.获取当前节点服务器的ip地址
      执行命令: ip r


     5.启动节点服务器
      执行命令 sh jmeter-server -Jserver.rmi.ssl.keystore.file=rmi_keystore.jks。(注意一定要去到jmeter的/bin目录下执行)


    6.拷贝测试计划以及相关的测试数据到节点服务器(示例中,测试计划DistributingPOST.jmx在JMeter的/bin文件下。)
      7.依照以上步骤完成对第二台节点服务器的配置
      GUI调试
      1.配置节点服务器
      打开文件jmeter.properties, 找到remote_hosts并输入节点服务器的IP(多个IP用逗号隔开),然后保存关闭即可。


    2.确认测试用例可以运行在主机上。(示例中模拟了6个用户向服务器发送Post的请求,从结果可以看出6个用户的请求都得到了成功的回应。)
    3.通常在正式测试之前,需要对测试计划进行不停地调试,或遇到问题时需要找出错的原因,GUI有时候可能会更直观一些。
      依次打开Run > Remote Start, 可以看到当前配置的节点服务器IP
      执行命令Remote Start All – 测试将同时运行在2台节点服务器上


    4.查看运行结果
      如下图 View Results Tree的结果中,12个用例运行成功,点击某一个用例,在右边的Sampler result中,Thread Name指示了当前用例运行的节点服务器IP。
      测试运行在节点服务器<192.168.1.15>


     测试运行在节点服务器<192.168.1.14>


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-28 03:14 , Processed in 0.059731 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表