新工作已经找到了,最近在忙着熟悉环境,昨天领导让我接触下httperf压力测试工具

百度了下,相关的文档,准备着手配置一个测试环境基于linux系统httperf+autobench+gnuplot,

httperf可支持单独使用,autobench是基于httperf的Perl脚本,保存测试结果生成文件,gnuplot可以对生成的文件转化成易于观察的图形文件

首先当然是新建一个linux的虚拟机

博主这里使用的是CentOS-6.6-64位系统

因为是安装配置都是源码编译,先行安装编译环境

yum -y install gcc

由于后续编译中涉及到ncurse文件系统,所以先行安装

yum install ncurses-devel

由于这里使用的CentOS版本可以使用 yum 命令来操作文件的安装

下面依次安装流程:GD2, texinfo, gnuplot, httperf, autobench

安装包的下载都放在 /usr/local/src 目录下

进入linux系统终端或者命令行界面

安装gd-2.0.33包:

cd /usr/local/src
wget http://www.boutell.com/gd/http/gd-2.0.33.tar.gz
tar xzvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --prefix=/usr/local/gd2
make
make install
echo "//usr/local/gd2/lib">>/etc/ld.conf
ldconfig

安装texinfo-4.8包:

cd /usr/local/src
wget http://ftp.gnu.org/gnu/texinfo/texinfo-4.8.tar.gz
tar zxvf texinfo-4.8.tar.gz
cd texinfo-4.8
./configure
make
make install

安装gnuplot-4.2.0包:

cd /usr/local/src
wget http://nchc.dl.sourceforge.net/sourceforge/gnuplot/gnuplot-4.2.0.tar.gz
tar zxvf gnuplot-4.2.0.tar.gz
cd gnupolt-4.2.0
./configure \
--prefix=/usr/local/gnuplot \
--with-cwdrc --without-row-help \
--with-kpsexpand \
--with-gd=/usr/local/gd2
make
make install

安装httperf-0.9.0包:

cd /usr/local/src
wget ftp://ftp.hpl.hp.com/pub/httperf/httperf-0.9.0.tar.gz
tar zxvf httperf-0.9.0.tar.gz
cd httperf-0.9.0
./configure --prefix=/usr/local/httperf
make
make install

安装autobench-2.1.2包:

cd /usr/local/src
wget http://www.xenoclast.org/autobench/downloads/autobench-2.1.2.tar.gz
tar zxvf autobench-2.1.2.tar.gz
cd autobench-2.1.2
make
make install

配置环境变量

vi /etc/profile

在第48行 HISTSIZE=1000下方添加

export PATH=/usr/local/bin:/usr/local/gnuplot/bin:/usr/local/httperf/bin:$PATH

保存退出后配置环境变量生效

source /etc/profile

现在就已经可以通过 bench2graph 文件对httperf的测试结果文件生成图形文件

但是这里涉及到生成图形颜色的问题,考虑到不更改源代码,先复制源文件

cp /usr/local/bin/bench2graph /usr/local/bin/bench2ps   

注意:网上都说要通过sed -i修改文件内容(PS:博主这里加了这段命令后生成图片文件的时候反而报错,不知道原因,直接使用原文件是可以的)

sed -i 's/postscript color/png xffffff/g' /usr/local/bin/bench2ps

接下来在使用过程中会遇到一个报错

httperf: warning: open file limit > FD_SETSIZE; limiting max. # of open files to FD_SETSIZE

需要修改2个文件:

vi /etc/security/limits.conf 

在文件最后一行添加

*                hard    nofile          102400
* soft nofile 102400

再修改另一文件:

vi /usr/include/bits/typesizes.h

在文件第63行的值修改成102400
以上2个文件修改之后,需要重新编译httperf

cd /usr/local/src/httperf-0.9.0
./configure --prefix=/usr/local/httperf
make
make install

配置过程全部结束,下来是介绍一下简单的使用

博主这里对百度首页为例,百度对应的IP:202.108.22.5,端口:80

/usr/local/bin/autobench \
> --single_host \
> --host1=202.108.22.5 \
> --port1=80 \
> --quiet \
> --low_rate=10 \
> --high_rate=1000 \
> --rate_step=10 \
> --num_call=1 \
> --num_conn=100 \
> --timeout=10 \
> --file /opt/result1.tsv

再通过修改后的文件bench2ps,命令格式:

bench2ps 测试结果文件 测试图形文件

/usr/local/bin/bench2ps /opt/result1.tsv /opt/result1.ps 1 2 3 4 5 6 7 8 9

输入标题后,成功生成图片文件

httperf学习笔记(CentOS-6.6环境下安装配置)的更多相关文章

  1. 【转】Nginx 学习笔记(十一)nginx下安装配置naxsi waf防火墙(附完整编译、配置)

    原文地址:http://f2ex.cn/nginx-installed-configuration-naxsi-waf/ Naxsi 是第三方 nginx 模块 ,它和 Modsecurity 都是开 ...

  2. Centos 7环境下安装配置Hadoop 3.0 Beta1简记

    前言 由于以前已经写过一篇Centos 7环境下安装配置2.8的随笔,因此这篇写得精简些,只挑选一些重要环节记录一下. 安装环境为:两台主机均为Centos 7.*操作系统,两台机器配置分别为: 主机 ...

  3. 笔记-python-centos环境下安装配置

    笔记-python-centos环境下安装配置 1.      准备工作 环境准备 centos6.5 mini,已有python 2.6.6 下载源码包 Python官网下载Gzipped sour ...

  4. centos / Linux 服务环境下安装 Redis 5.0.3

    原文:centos / Linux 服务环境下安装 Redis 5.0.3 1.首先进入你要安装的目录 cd /usr/local 2.下载目前最新稳定版本 Redis 5.0.3 wget http ...

  5. win环境下安装配置openCV-4.3.0

    win环境下安装openCV-4.3.0 首先下载 推荐国内镜像 官网太太太慢了 附上 下载地址 下载之后打开exe解压到目录都是常规操作 环境变量的配置 依次打开到系统变量的path 新建一个路径为 ...

  6. Hadoop学习笔记—22.Hadoop2.x环境搭建与配置

    自从2015年花了2个多月时间把Hadoop1.x的学习教程学习了一遍,对Hadoop这个神奇的小象有了一个初步的了解,还对每次学习的内容进行了总结,也形成了我的一个博文系列<Hadoop学习笔 ...

  7. Centos 7环境下安装配置MySQL 5.7

    安装步骤为: 1.由于Centos 7版中已经移除MySQL rpm,因此需要到其官方网站上下载rpm,下载完成后,使用以下命令,来安装MySQL的rpm配置. rpm -ivh *****[注释:* ...

  8. 一、linux学习之centOS系统安装(VMware下安装)

    一.下载 这个真的没有什么技术含量,也不附下载连接了.这里需要说明的是,其实在VMware下安装centOS是非常简单的,但是这里我要纪录的是在PC上安装centOS,之所以跟标题有出入是因为为了纪录 ...

  9. Python学习笔记(三)windows下安装theano

    2016.6.28补充: 不论是实验室的电脑还是我的笔记本,只要是windows下,theano.test()都是不通过的.虽然能使用一些theano中的函数,但是我感觉很不好. 所以还是转Ubunt ...

随机推荐

  1. C语言基础--for循环

    for循环格式: for (初始化表达式;条件表达式;循环后增量表达式) { 语句; ... } 条件表达式: 和while, dowhile一样, 只有条件满足才会执行循环体 初始化表达式: 在整个 ...

  2. hdu 1057 (simulation, use sentinel to avoid boudary testing, use swap trick to avoid extra copy.) 分类: hdoj 2015-06-19 11:58 25人阅读 评论(0) 收藏

    use sentinel to avoid boudary testing, use swap trick to avoid extra copy. original version #include ...

  3. 安卓手机上的python运行环境-qpython

    qpython是一个能让安卓手机运行和编写python的APP,到网上下载APK安装或者在GOOGLE PLAY搜索安装即可. 安装之后你可以你手机跑自己的python程序. qpython有两个大版 ...

  4. app转让遇到的坑

    家人共享的一部分 首先我们要符合app转让的一些基本规定,填写正确的信息去申请转让.(google会有很多正确的转让步骤),这里我就不多写出来了. 当接收到接受app的时候会出现一些想不到的问题. 其 ...

  5. Python学习路程day1

    变量起名: 变量名如果太长,推荐使用下划线来分开,让人看得清晰明白.例:nums_of_alex_girl=19 .或者是驼峰写法,即首字母大写.例:NumOfAlexGf=18 注意:不合法的变量起 ...

  6. 动手实现自己的 STL 容器《2》---- list

    1. 序: 本文参考了侯捷的 <STL 源码分析>一书,出于兴趣,自行实现了简单的 list 容器. 学习了 STL 的 list 容器的源代码,确实能够提高写链表代码的能力.其中的 so ...

  7. PHP中常用的函数

    1.php 字符串截取函数 2.php取得当前时间函数 3.php 字符串长度函数 4.几种php 删除数组元素方法 5.php中var_dump()函数的详解说明 6.PHP preg_match正 ...

  8. 深入学习golang(1)—数组与切片

    数据(array)与切片(slice) 数组声明: ArrayType   = "[" ArrayLength "]" ElementType . 例如: va ...

  9. asp.net 服务器Button控件使用(onclick和onclientclick使用)

    <asp:Button ID="btn_Save" class="button green" Style="width: 100px; heig ...

  10. codeforces105d Bag of mice ——概率DP

    Link: http://codeforces.com/problemset/problem/148/D Refer to: http://www.cnblogs.com/kuangbin/archi ...