博客
关于我
2、使用siege进行服务端性能测试
阅读量:798 次
发布时间:2023-04-16

本文共 802 字,大约阅读时间需要 2 分钟。

使用Siege工具进行性能测试

查看Siege帮助

首先,运行siege -h查看帮助文档,熟悉常用命令。以下是一些常用的Siege选项:

  • -c:指定并发数,例如-c 20表示同时有20个用户访问。
  • -r:指定重复次数,例如-r 3表示执行3次循环。
  • -d:指定请求延迟,适用于模拟真实用户的随机访问时间。
  • -f:指定URL列表,支持一次性多个地址的压力测试。
  • -t:指定测试时长,例如-t 10s表示10秒测试。
  • -g:用于调试,打印请求头信息。
  • -H:指定自定义请求头。
  • -l:指定测试结果保存路径。

实战演练

需求

我们需要模拟10个用户同时访问http://www.baidu.com,运行2个循环,测试服务器性能。

实现

运行命令:

siege -c 20 -r 3 http://www.baidu.com

运行后会输出详细的测试结果。

测试结果分析

  • 总请求次数:180次,说明服务器在2个循环内处理了180个请求。
  • 连接成功率:85.71%,计算公式为成功请求数 / 总请求数
  • 总耗时:1.60秒,反映了完成180次请求所需的总时间。
  • 数据传输量:2.10MB,包括请求头和内容。
  • 平均响应时间:0.05秒,展示了服务器的响应速度。
  • 吞吐量:112.50 trans/sec,衡量处理请求的速度。
  • 并发请求数:6.04,表示平均同时请求的数量。
  • 成功/失败请求数:180次成功,30次失败。
  • 最长/最短请求时间:1.01秒和0.00秒。

注意事项

连接成功率的计算方式是成功请求数 / 总请求数,这里为180 / 180,结果为100%。但实际中可能存在重定向或错误请求,需结合具体情况分析。

总结

通过以上测试,可以评估服务器的性能。Transaction Rate(每秒请求数)为112.50 trans/sec,是衡量吞吐量的关键指标。该数据可以反馈给开发团队,帮助优化服务器性能。

转载地址:http://gjgfk.baihongyu.com/

你可能感兴趣的文章
mysql批量update优化_Mysql中,21个写SQL的好习惯,你值得拥有呀
查看>>
mysql批量update操作时出现锁表
查看>>
MYSQL批量UPDATE的两种方式
查看>>
mysql批量修改字段名(列名)
查看>>
MySQL批量插入数据遇到错误1213的解决方法
查看>>
mysql技能梳理
查看>>
MySQL报Got an error reading communication packets错
查看>>
Mysql报错Can‘t create/write to file ‘/tmp/#sql_3a8_0.MYD‘ (Errcode: 28 - No space left on device)
查看>>
MySql报错Deadlock found when trying to get lock; try restarting transaction 的问题解决
查看>>
MySQL报错ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘
查看>>
Mysql报错Packet for query is too large问题解决
查看>>
mysql报错级别_更改MySQL日志错误级别记录非法登陆(Access denied)
查看>>
Mysql报错:too many connections
查看>>
MySQL报错:无法启动MySQL服务
查看>>
mysql授权用户,创建用户名密码,授权单个数据库,授权多个数据库
查看>>
mysql排序查询
查看>>
MySQL排序的艺术:你真的懂 Order By吗?
查看>>
MySQL排序的艺术:你真的懂 Order By吗?
查看>>
Mysql推荐书籍
查看>>
Mysql插入数据从指定选项中随机选择、插入时间从指定范围随机生成、Navicat使用存储过程模拟插入测试数据
查看>>