简介
  siege是一款HTTP/FTP负载测试和基准压测工具
 
Download
 
安装
  mkdir -p /usr/local/siege/etc;mkdir -p /usr/local/siege/var
     ./configure --prefix=/usr/local/siege --mandir=/usr/local/man --with-ssl && { make && make install }
 
目录结构

  /usr/local/siege/
  ├── bin
  │ ├── bombardment
  │ ├── siege
  │ ├── siege2csv.pl
  │ └── siege.config
  ├── etc
  │ ├── siegerc
  │ └── urls.txt
  └── var
  ├── siege.log (配置文件开启log)

 
生成配置文件
     ./bin/siege.config  ->  ${HOME}/.siege/siege.conf
 
开启日志
     logfile = /usr/local/siege/var/siege.log
     logging = true
  
参数选项
man siege
-c, —config
打印出配置文件的详细信息 -v, --verbose
siege进入verbose模式(默认模式 yes) HTTP 状态码会显示不同颜色(默认 color = yes) -q, —quiet
siege进入silence模式 -g URL, --get=URL
查看请求 返回头文件 -c NUM, --concurrent=NUM
设置虚拟并发用户数 -r NUM, --reps=NUM|once
每个虚拟用户的运行次数 -t NUMm, --time=NUMm
每个虚拟用户的运行时间
NUM 多长时间
m 时间单位 H小时 M分钟 S秒 (大小写不敏感 NUM和m之间不能有空格) -d NUM, --delay=NUM
每个page request之间的间隔秒(默认 delay=0.5) -b, --benchmark
压测模式 在请求之间没有时间间隔 -i, --internet
在进入internet模式中调用 随机请求url -f FILE, --file=FILE
进入internet模式 从文本urls.txt中读取url(每个url一行 不同于命令行 url不需要加冒号) -R FILE, --rc=FILE
设置可选的配置文件路径 而不是默认的 -L FILE, --log=FILE
设置可选的日志文件路径 而不是默认的 -m "string", --mark="string"
在每条状态日志前面加上标示符 -H "header: value", --header="Header: value"
设置自定义请求header -A "string", --agent="string"
设置自定义请求User-agent -T "text", --content-type="text"
设置自定义请求Content-type
 
性能分析  
man siege
   Transactions: 全部的HTTP请求数 Availability: 成功建立连接的socket百分比(失败和超时外) 没有包括HTTP code 400和500(因为他们是连接失败的socket) Elapsed time: 测试的总时间 从第一个请求开始到最后一个请求结束的时间 Data transferred: 被测试服务器发送的全部数据量MB Response time: 每一个请求的平均响应时间 Transaction rate: 吞吐率 被测试服务器处理的请求数/s Throughput: 吞吐率 被测试服务器发送的数据量MB/s Concurrency: 平均的并发连接数(总请求数/Elapsed time) Successful transactions: 被测试服务器返回的成功连接数(code < ) Failed transactions: 连接失败的socket数 Longest transaction: 耗时最久的请求时间 shortest transaction: 耗时最短的请求时间
 

Example
     1、command-line mode
     ./bin/siege -c 1000 -t1m “http://www.example1.com/"
 
    2、internet mode
     ./bin/siege -c 1000 -t1m -i -b
 
     urls.txt
          http://www.example3.com/ 

siege详解的更多相关文章

  1. Web性能压力测试工具之Siege详解

    PS:Siege是一款开源的压力测试工具,设计用于评估WEB应用在压力下的承受能力.可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进 ...

  2. Web 性能压力测试工具之 Siege 详解

    Siege是一款开源的压力测试工具,设计用于评估WEB应用在压力下的承受能力.可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行.s ...

  3. apache ab测试命令详解

    这篇文章主要介绍了apache性能测试工具ab使用详解,需要的朋友可以参考下   网站性能压力测试是服务器网站性能调优过程中必不可缺少的一环.只有让服务器处在高压情况下,才能真正体现出软件.硬件等各种 ...

  4. Linq之旅:Linq入门详解(Linq to Objects)

    示例代码下载:Linq之旅:Linq入门详解(Linq to Objects) 本博文详细介绍 .NET 3.5 中引入的重要功能:Language Integrated Query(LINQ,语言集 ...

  5. 架构设计:远程调用服务架构设计及zookeeper技术详解(下篇)

    一.下篇开头的废话 终于开写下篇了,这也是我写远程调用框架的第三篇文章,前两篇都被博客园作为[编辑推荐]的文章,很兴奋哦,嘿嘿~~~~,本人是个很臭美的人,一定得要截图为证: 今天是2014年的第一天 ...

  6. EntityFramework Core 1.1 Add、Attach、Update、Remove方法如何高效使用详解

    前言 我比较喜欢安静,大概和我喜欢研究和琢磨技术原因相关吧,刚好到了元旦节,这几天可以好好学习下EF Core,同时在项目当中用到EF Core,借此机会给予比较深入的理解,这里我们只讲解和EF 6. ...

  7. Java 字符串格式化详解

    Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...

  8. Android Notification 详解(一)——基本操作

    Android Notification 详解(一)--基本操作 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Notification 文中如有纰 ...

  9. Android Notification 详解——基本操作

    Android Notification 详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 前几天项目中有用到 Android 通知相关的内容,索性把 Android Notificatio ...

随机推荐

  1. DWZ-JUI 树形Checkbox组件 无法一次获取所有选中的值的解决方法

    UI中 tree Checkbox 组件 在官方文档中提供的oncheck事件中只能够获取当前点击的权限值,而无法获取其他选中的值 <ul class="tree treeFolder ...

  2. velocity模板引擎学习(2)-velocity tools 2.0

    使用velocity后,原来的很多标签无法使用了,必须借助velocity tools来完成,目前velocity tools最新版本是2.0,下面是velocity tools的一些注意事项: 1. ...

  3. 几种任务调度的 Java 实现方法与比较

    综观目前的 Web 应用,多数应用都具备任务调度的功能.本文由浅入深介绍了几种任务调度的 Java 实现方法,包括 Timer,Scheduler, Quartz 以及 JCron Tab,并对其优缺 ...

  4. C# 值类型和引用类型

    一.基本概念 C#只有两种数据类型:值类型和引用类型 值类型在线程栈分配空间,引用类型在托管堆分配空间 值类型转为引用类型称成为装箱,引用类型转为值类型称为拆箱 以下是值类型和引用类型对照表 从上图可 ...

  5. Scala函数式编程进阶

    package com.dtspark.scala.basics /** * 函数式编程进阶: * 1,函数和变量一样作为Scala语言的一等公民,函数可以直接赋值给变量: * 2, 函数更长用的方式 ...

  6. 踩到一个Emit的坑,留个纪念

    重现代码: var dmFoo = new DynamicMethod("Foo", typeof(void), Type.EmptyTypes); var ilFoo = dmF ...

  7. DB2和Oracle区别

    转 http://blog.chinaunix.net/uid-7374279-id-2057574.html 写在前面:今天客户来访(日本人),问我DB2和Oracle区别.因为不是DBA(勉强的理 ...

  8. C# 如何捕获键盘按钮和组合键以及KeyPress/KeyDown事件之间的区别 (附KeyChar/KeyCode值)

    1. 首先将窗口属性KeyPreview设为true,如果属性对话框中找不到,就直接在代码里添加: 2. 添加KeyPress / KeyDown事件: 1.KeyPress 和KeyDown .Ke ...

  9. JavaScript学习笔记-简单的倒计时跳转页面

    <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...

  10. Eclipse利用Maven2搭建SpringMVC框架的Web工程

    一.准备工作: 下载apache-maven--> 配置Maven_home -->下载Eclipse Maven插件 二.新建工程:   选择新建Maven Project  arche ...