先查看siege帮助

输入siege -h

翻译一下常用命令

-c  指定并发数

-r  指定重复次数

-d  指定请求的延迟时间,注意每个请求间随机延迟

-f  指定url列表,可以一次给多个地址加压

-t  指定用例执行时间,比如-t 10s -t 1M(H)之类

-g  获取请求的headers信息并打印出来,debug专用

-H  指定请求的headers信息

-l或--log=[File]  指定测试结果的路径

根据帮助文档我们可以直接实战

需求:

1、模拟10个用户同时访问http://www.baidu.com

2、一共跑2个循环

实现:

1、输入:siege -c 20 -r 3 http://www.baidu.com

2、运行后结果

3、了解各字段意思

  • Transactions: siege对服务器的访问次数。如果页面发生了redirect,那么siege会将跳转过的请求算成是另一个transaction
  • Availability: socket连接的成功率。算法是,如果页面发生了timeout,4xx,5xx,那么该请求算是失败请求,成功率就等于(所有请求-失败请求) / 总请求数
  • Elapsed time: 所有请求耗费的时间
  • Data transferred: 所有请求传输的数据量,包括请求的headers和content。所以这个数值可能比server端统计的数值要大一点
  • Response time: 平均响应时间
  • Transaction rate: Transactions / Elapsed time
  • Throughput: 每秒平均传输的数据量
  • Concurrency: 平均并发的请求数
  • Successful transactions: 所有status code < 400的transactions数量
  • Failed transactions: 所有status code >= 400的transactions数量
  • Longest transaction: 最耗时的请求时间
  • Shortest transaction: 最短单个请求时间

4、分析结果

我们对http://www.baidu.com用10个用户跑了两个循环,对服务器访问了180次,连接的成功率是85.71%。所有请求耗费的时间是1.60secs,所有请求传输的数据量是2.10M,平均响应时间0.05 secs,吞吐量是112.50 trans/sec,每秒平均传输的数据量是1.31 MB/sec,

平均并发的请求数6.04,请求成功的次数是180次,请求失败的数是30次,最耗时的请求时间是1.01,最短单个请求时间0.00.

有个注意点,就是连接的成功率是85.71%是怎么来的呢?是请求成功数/请求总数。也就是180/180+30

当然这些数据中,我觉得最重要的是Transaction rate,上面这个例子是10个用户跑了两个循环,Transaction rate是112.50 trans/sec,如果这个吞吐量不满足需求,那么我们就可以把这个数据交给开发,让开发进行处理。

2、使用siege进行服务端性能测试的更多相关文章

  1. siege之-服务端性能测试

    官方网站http://www.joedog.org/ 有3种操作模式: 1) Regression (when invoked by bombardment)Siege从配置文件中读取URLs,按递归 ...

  2. 服务端性能测试校准v1.2

    服务端性能测试工具校验v1.2 想知道压力工具实际并发多少,想知道压力工具统计响应数据准不准,来试试这款校准工具. 更新说明: 1.修正总接收请求显示上限. 2.随着响应时间增加,自动增加处理线程. ...

  3. 服务端性能测试工具校验v1.1

    服务端性能测试工具校验v1.1 更新说明: 1.精简CRT运行库支持. 2.添加响应模拟测试,校验压力测试工具的响应时间统计准确性. 3.大并发请求请降低延迟时间 WEIMJSAM原创,转载请注明出处 ...

  4. 服务端性能测试工具校验v1.2

    服务端性能测试工具校验v1.2 想知道压力工具实际并发多少,想知道压力工具统计响应数据准不准,来试试这款校准工具. 更新说明: 1.修正总接收请求显示上限. 2.随着响应时间增加,自动增加处理线程. ...

  5. 服务端性能测试工具校验v1.0

    性能测试工具对服务端进行并发测试时,如果工具本身问题或异常就会造成真实并发与实际并发有差距,要测试10000/S并发的性能结果实际到达服务端的并发达不到95%,这样的测试无效. 所以给大家共享,我做的 ...

  6. 服务端性能测试 TPS

     针对服务器端的性能,以TPS为主来衡量系统的性能,并发用户数为辅来衡量系统的性能,如果必须要用并发用户数来衡量的话,需要一个前提,那就是交易在多长时间内完成,因为在系统负载不高的情况下,将思考时间( ...

  7. 服务端性能测试技能tree

    ALL: Left: Right: 摘抄一下(觉得不错) 以下来自百度百科 ---- 软件性能测试 软件性能测试是在交替进行负荷和强迫测试时常用的术语.理想的“软件性能测试”(和其他类型的测试)应在需 ...

  8. (原创)如何对APP服务端进行压力测试

    版权声明:本文为原创文章,转载请先联系并标明出处 APP性能测试分为客户端性能测试和服务端性能测试,客户端的性能测试主要是针对启动快慢.耗电量.耗流量.内存使用等指标进行评估,目前主流的APP客户端性 ...

  9. 【转】京东金融App端链路服务端全链路压测策略

    京东金融移动端全链路压测历时三个月,测试和服务端同学经过无数日日夜夜,通宵达旦,终于完成了移动端链路的测试任务.整个测试有部分涉及到公司敏感数据,本文只对策略部分进行论述. 1.系统架构与策略 在聊性 ...

随机推荐

  1. (转)Spring Boot干货系列:(三)启动原理解析

    转:http://tengj.top/2017/03/09/springboot3/ 前言 前面几章我们见识了SpringBoot为我们做的自动配置,确实方便快捷,但是对于新手来说,如果不大懂Spri ...

  2. Golang 开发技能图谱

    # Golang 开发技能图谱 ## Go 语言环境搭建- Go 安装- GOPATH 与工作空间- Go 命令- Go开发工具 ## GO 语言编程基础- 关键词和语法(Language Synta ...

  3. https://www.cnblogs.com/limanjihe/p/10184327.html

    https://www.cnblogs.com/limanjihe/p/10184327.html https://blog.csdn.net/xnnswmzdszyd/article/details ...

  4. Dubbo入门到精通学习笔记(十九):MySQL源码编译安装、MySQL主从复制的配置

    文章目录 MySQL 源码编译安装(CentOS-6.6+MySQL-5.6) 一.服务器配置: 二.源码安装 MySQL5.6.26: MySQL主从复制的配置 环境 依赖课程 MySQL 主从复制 ...

  5. 在Stimulsoft Reports.Net运行时修改报表的连接字符串

    怎么在Stimulsoft Reports.Net运行时修改报表的连接字符串?怎么改呀 C# StiReport report = new StiReport(); report.Load(" ...

  6. 安装graphviz

    环境win10 1. 下载安装包首先进入官网下载msi文件 安装,一路next,不需要注意什么 2.设置环境变量 安装完毕之后,我们需要手动配置环境变量. 找到刚才我们安装地址,进入graphviz, ...

  7. 第六周实验总结&学习总结

    一.实验目的 (1)掌握类的继承方法 (2)变量的继承和覆盖,方法的继承,重载和覆盖实现 二.实验内容 源代码 package java2; import java.util.Scanner; cla ...

  8. 用Emacs进行Java开发

    用Emacs进行Java开发 */--> code {color: #FF0000} pre.src {background-color: #002b36; color: #839496;} 用 ...

  9. 19-python基础-进制之间的转换

    二进制-八进制-十进制-十六进制相互转换 1.十进制转为其他进制 # (1)十进制转二进制 a = 8 bin(a) --->>'0b1000' # (2)十进制转八进制 oct(a) - ...

  10. 【java】自定义排序

    使用Comparable接口 这里定义了一个类Node,有两个属性,id,age. 排序方法是,先根据id升序排,id一样,age降序排. 里面有一个compareTo方法.返回值有三个 1. < ...