Azure Lei Zhang的博客

weibo: LeiZhang的微博/QQ: 185165016/QQ群:319036205/邮箱:leizhang1984@outlook.com/TeL:139-161-22926

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  489 随笔 :: 0 文章 :: 417 评论 :: 70万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

  《Windows Azure Platform 系列文章目录

 

  本文介绍如何使用netperf进行PPS (packets per second)压力测试

 

  主要步骤分为一下几点:

  1.创建Azure Server VM和Azure Client VM,其中Server VM作为服务器,Client VM对Server发起请求

  2.分别在Server VM和Client VM上,都安装netperf

  3.在Server VM上启动netserver服务

  4.在Client VM上创建压测脚本,并进行压力测试

  5.在Server VM上收集日志

 

 

  具体步骤如下:

  1.创建Azure虚拟网络,创建Azure虚拟机,步骤略。

  2.选择Azure VM类型为DV5系列,如D4s v5,注意VM的网络设置里,要选择加速网卡

  3.分别在Server VM和Client VM上,都安装netperf

复制代码
yum install gcc make  -y
yum install sysstat -y

mkdir /data
cd data

wget -c "https://codeload.github.com/HewlettPackard/netperf/tar.gz/netperf-2.5.0" -O netperf-2.5.0.tar.gz
tar -zxvf netperf-2.5.0.tar.gz 

cd netperf-netperf-2.5.0

./configure 
make && make install
复制代码

  执行netperf -h和netserver -h命令,确认安装成功

 

  4.在Server VM上启动netserver服务

netserver

 

  5.在Client VM上准备测试脚本,我们生成一个shell文件,叫multi_thread.sh

vi multi_thread.sh

  输入下面的内容中,通过使用UDP发起并发请求。

复制代码
#!/bin/bash
host_ip=$1
time_elapsed=$2
thread_count=$3

for i in $(seq 1 $thread_count)
{
     netperf -H $host_ip  -t UDP_STREAM -l $time_elapsed -- -m 1 -R 1 &
}
复制代码

 

TCP_STREAM:client端向server端发送批量TCP数据
UDP_STREAM:client端向server端发送批量UDP数据
TCP_RR和TCP_CRR:前者是在同一个连接中进行多次request和response请求(并发),后者(新建)是每次请求新建一个连接(HTTP)
UDP_RR:使用UDP进行request和response请求

 

 

  6.在Client VM上执行脚本

./multi-thread [ServerVM的内网IP地址] [测试持续时间秒] [测试线程数]

 

  7.在Server VM上执行脚本

  下面的脚本中,DEV显示网络接口信息,每1秒钟取1次值,一共执行1100秒。把结果输出到txt文件里

sar -n DEV 1 -t 1100 > 4core_1thread_20minutes.txt

 

  输出结果类似以下信息:

11:02:57 AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
11:02:58 AM eth1 15.00 20.00 3.61 5.86 0.00 0.00 0.00 0.00
11:02:58 AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:02:58 AM eth0 14.00 19.00 3.35 5.80 0.00 0.00 0.00 0.00

Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
Average: eth1 5091163.97 5.36 298311.54 1.53 0.00 0.00 0.00 2.44
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 5091163.58 5.05 228705.77 1.51 0.00 0.00 0.00 1.87

  

  其中:

IFACE:网络接口
rxpck/s:每秒钟接收的数据包
txpck/s:每秒钟发送的数据包
rxbyt/s:每秒钟接收的字节数
txbyt/s:每秒钟发送的字节数
rxcmp/s:每秒钟接收的压缩数据包
txcmp/s:每秒钟发送的压缩数据包
rxmcst/s:每秒钟接收的多播数据包

 

posted on   Lei Zhang的博客  阅读(830)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2020-07-09 Azure Redis Cache (6) Java Spring Cloud访问Azure Redis Cluster
2014-07-09 Microsoft Azure News(2) 在Microsoft Azure上运行SAP应用程序
2014-07-09 Microsoft Azure News(1) 新的数据中心Japan East, Japan West and Brazil South
2014-07-09 Windows Azure HandBook (2) Azure China提供的服务
2012-07-09 Windows Azure Affinity Groups (1) Windows Azure Affinity Groups(地缘组)的重要性
点击右上角即可分享
微信分享提示