Tsung百万压测之一:执行步骤篇

系列文章目录

Tsung百万压测之一:执行步骤篇
Tsung百万压测之二:环境搭建、配置文件编写和运行、报表生成
Tsung百万压测之三:配置文件(压测脚本)的关键配置
Tsung压测踩坑之server集群


前言

总是说细节、理论,会让人不胜其烦。我们使用Tsung来一次100万用户压测的吧,或许能够引起好多人的兴趣。

下面,我根据在公司分享的PPT《分布式百万用户压测你的业务》,贴出其中的关键部分,说明进行一次100W(即1M)用户压测的执行步骤。

如何做分布式百万用户的压测 ?

假定面向小白用户,因此才有了下面可执行的10个步骤用于开展分布式百万用户。
​​在这里插入图片描述
看着步骤很多,一旦熟悉并掌握之后,中间可以省却若干。

1 阅读Tsung文档

在这里插入图片描述
建议大家在使用Tsung之前,花费一点时间阅读完整个用户手册,虽然是英文的,阅读起来也不复杂。读完之后,我们也就知道如何做测试了,遇到的大部分问题,也能够在里面找到答案。

2 确定压测目标

在这里插入图片描述

  • 要对线上系统压测100万用户,为了尽可能降低线上服务器负载压力,这里设置每秒产生500个用户,将在60分钟内产生完毕。
  • 要压测的服务器所填写网络访问地址可以根据需要填写多个

3 计算所需要从机数量

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

  • Tsung为主从模型,我们启动了主节点之后,主节点会按需启动从节点
  • 设定所用服务器可用内存大于3G,并且都只有一个IP地址
  • 一台从机可用模拟6万用户,需要17台从机
  • 若资源充足,可以少用几台服务器,配置多个IP地址
  • 找到所需要的压测用服务器,在资源层面满足测试测试集群需要,这个是关键

4 部署Tsung

在这里插入图片描述
因为Tsung依赖于Erlang,因此需要首先安装:

wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

rpm -Uvh erlang-solutions-1.0-1.noarch.rpm

sudo yum install erlang

然后再是安装Tsung,建议直接使用Tsung 1.6.0修改版,主要提供IP只连支持(具体细节,可参考这里 Tsung笔记之IP直连支持篇 - 聂永的博客 ):

git clone https://github.com/weibomobile/tsung-1.6.0.git

./configure --prefix=/usr/local

make install

5 下载SSH替代者-tsung—rsh

在这里插入图片描述
为什么要替换掉SSH,主要原因:

  • SSH在一般网络机房环境内服务器之间被禁止连接通信,这会导致主节点无法启动从节点,无法建立分布式压测集群
  • 就算是SSH没被禁用,主从之间需要设置免秘钥SSH登录方式,十分麻烦

可进一步参考:Tsung笔记之分布式增强跳出SSH羁绊篇

6 编写压测内容

在这里插入图片描述在这里插入图片描述在这里插入图片描述
要把业务定义的所有会话内容完整的整理映射成Tsung的会话内容,因为用户行为很复杂,也需要我们想法设法去模拟。

其实,演示所使用的是私有协议,可以参考 Tsung笔记之插件编写篇

当完成压测会话内容之后,users_100w.xml文件已经填写完毕,我们可以开始压测了。

7 运行Tsung

在这里插入图片描述

  • -F 10.10.10.10 主节点IP地址,IP直连特性
  • -rsh rsh_client.sh 远程终端,SSH通道被替换
  • -s 压测端启用erlang smp特性,按需使用所有CPU核心

我们启动了从节点,然后从节点被启动,开始执行具体压测任务了。

8 压测过程中,我们该做什么

在这里插入图片描述
紧密关注服务器服务状态、资源占用等情况就对了,最好还要作为一个终端用户参与到产品体验中去。

9 压测结束,生成Tsung报表

在这里插入图片描述
Tsung压测结束之后,不会主动生成压测结果报表的,需要借助于 tsung_stats.pl perl脚本生成,要查阅可借助python生成临Web站点,浏览器打开即可。

10 回顾和总结

在这里插入图片描述


小结

其实,一旦熟悉并掌握Tsung之后,步骤1-6都可以节省了,循环执行步骤7-10。 你若以为仅仅只是谈论Tsung如何做1M用户压测,那就错了,只要机器资源够,这个目标就很容易实现。我们更应该关注,我们压测的目的是什么,我们应该关注什么,这个应该形成一个完整可循环过
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值