测试nginx处理能力和IO读写能力,使用工具webbench、iozone。

1、nginx测试

使用webbench工具,增加并发量,时间分别取30s,60s

1、webbench -c 200 -t 60 http://localhost/index.html

200并发60s执行结束,从200,500,800,1000,依次向上加,直至出现Failed请求

Speed(pages/min):指的输出页数/分钟。

Speed(bytes/sec):是指比特/秒,它表示网络传输速度的大小,每秒钟传输数据量。

Request(susceed):表示成功或完成

Request(failed)     :表示失败或未能完成。

2、IO测试

实例:#./iozone -a -n 512m -g 4g -i 0 -i 1 -i 5 -f /mnt/iozone -Rb ./iozone.xls

注:进行全面测试,最小测试文件为512M,直到测试到4g,测试read,write,测试的地方在/mnt下,生成xls文件。

write:测试向一个新文件写入的性能。

re-write:测试向一个已存在的文件写入的性能。当一个已存在的文件被写入时,所需工作量较少,因为此时元数据已经存在。re-write的性能通常比write的性能高。

read:测试读一个已存在的文件的性能。

re-Read:测试读一个最近读过的文件的性能。re-Read性能会高些,因为操作系统通常会缓存最近读过的文件数据。这个缓存可以被用于读以提高性能。

左侧一列是测试文件大小(K),最上边一行是块大小(K),中间数据是传输速度。例如下表中第二行的“1247515”,即测试文件大小为524288K,以块大小为64K来进行传输,传输速度为1247515kBytes/sec 。表格中数据为0的部分是因为选择-a 参数时,系统默认将自动停止使用低于64K的块大小测试。

3、Nginx配置仅做参考

Nginx标准参数 

/etc/nginx/nginx.conf

worker_processes 10;

events {
    worker_connections 102400;
}

client_max_body_size    100m;
client_body_buffer_size    256k;
proxy_connect_timeout    120;
proxy_send_timeout    120;
proxy_read_timeout    120;

proxy_set_header X-Real-IP    $remote_addr;
proxy_set_header REMOTE-HOST    $remote_addr;
proxy_set_header X-Forwarded-For    $remote_addr;

如果是内网再中转服务器的话-Forwarded-For请使用
proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;

Nginx服务器需要配置的Linux操作系统参数

net.ipv4.tcp_syncookies = 1 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;

net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;

net.ipv4.tcp_tw_recycle = 1 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

net.ipv4.tcp_fin_timeout = 10 修改系統默认的 TIMEOUT 时间

配置步骤:

1 >sudo vi /etc/sysctl.conf

添加下面四项(配置文件中几乎都包含了第一项,故只要加后面三项即可)

net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10

2 >sudo sysctl -p

刷新配置

3 >sudo sysctl -a |grep reuse

检查配置是否生效

**********************************************************************************************

nginx配置和测试的更多相关文章

  1. windows下Nginx配置与测试

    1.获取 下载地址:http://nginx.org/en/download.html        参考网址:http://nginx.org/en/docs/windows.html 2.准备工作 ...

  2. Nginx配置性能优化与压力测试webbench【转】

    这一篇我们来说Nginx配置性能优化与压力测试webbench. 基本的 (优化过的)配置 我们将修改的唯一文件是nginx.conf,其中包含Nginx不同模块的所有设置.你应该能够在服务器的/et ...

  3. LNMP环境搭建:Nginx安装、测试与域名配置

    Nginx作为一款优秀的Web Server软件同时也是一款优秀的负载均衡或前端反向代理.缓存服务软件 2.编译安装Nginx (1)安装Nginx依赖函数库pcre pcre为“perl兼容正则表达 ...

  4. Nginx配置多个基于域名的虚拟主机+实验环境搭建+测试

    标签:Linux 域名 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xpleaf.blog.51cto.com/9 ...

  5. 项目测试环境自动化部署[jenkins前后端配置、Nginx配置]

    持续部署:关注点在于项目功能部署到服务器后可以正常运行,为下一步测试环节或最终用户正式使用做准备.(问题点:一个环节有问题,其他环节跟着有问题) 持续集成:关注点是在于尽早发现项目整体运行问题,尽早解 ...

  6. nginx配置反向代理或跳转出现400问题处理记录

    午休完上班后,同事说测试站点访问接口出现400 Bad Request  Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...

  7. Nginx 配置简述

    不论是本地开发,还是远程到 Server 开发,还是给提供 demo 给人看效果,我们时常需要对 Nginx 做配置,Nginx 的配置项相当多,如果考虑性能配置起来会比较麻烦.不过,我们往往只是需要 ...

  8. Apache、nginx配置的网站127.0.0.1可以正常访问,内外网的ip地址无法访问,谁的锅?

    最近做开发,发现一个比较尴尬的问题.因为我是一个web开发者,经常要用到Apache或者nginx等服务器软件,经过我测试发现,只要我打开了adsafe,我便不能通过ip地址访问我本地的网站了,比如我 ...

  9. nginx配置负载

    一.系统优化 1.修改/etc/sysctl.conf,优化tcp连接数 net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 120 ...

随机推荐

  1. UNIX C 文件权限 Part2_day01

    1.文件访问测试 测试调用进程对指定文件是否拥有足够的访问权限 #include <unistd.h> int access(const char* pathname,int mode); ...

  2. 洛谷P1996 约瑟夫问题【队列】

    题目背景 约瑟夫是一个无聊的人!!! 题目描述 n个人(n<=100)围成一圈,从第一个人开始报数,数到m的人出列,再由下一个人重新从1开始报数,数到m的人再出圈,--依次类推,直到所有的人都出 ...

  3. 关于linux suse11忘记root密码修改方法

    SUSE Linux忘记root密码   1.重新启动机器,在出现grub引导界面后,按F2,在启动linux的选项里加上init=/bin/bash,通过给内核传递init=/bin/bash参数使 ...

  4. python类中属性逗号引发的类型改变

    不注意点了个逗号引发了类型改变 [shangbl@newsvn ~]$ cat test.py class AB1: a="a" class AB12: a="a&quo ...

  5. laravel5 文件上传

    <!DOCTYPE html><html lang="zh-CN"><head> {{--设置字符编码--}} <meta charset ...

  6. 【[Offer收割]编程练习赛10 B】出勤记录II

    [题目链接]:http://hihocoder.com/problemset/problem/1482 [题意] [题解] 递推题. 每次增加3个字符中的一个;然后根据下面这个数组递推; 递推方式看程 ...

  7. 洛谷—— P2014 选课

    https://www.luogu.org/problem/show?pid=2014 题目描述 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课 ...

  8. mysql 易错误理解

    MySQL作为数据库的一大主力军,到处存在于我们各种系统中,相信大家都不陌生!但是,你知道你能用不代表你知道细节,那我们就来盘点盘点其中一些我们平时不太注意的地方,一来为了有趣,二来为了不让自己踩坑. ...

  9. 关于Dos窗体的设置

    1.输入cmd,点击回车键.出现下图: 2.点击左上角(红框框起来的地方),进行例如以下图操作: 3.选择"属性",出现下图: 4.选择"字体"能够改动字体的大 ...

  10. strcpy函数使用方法以及底层实现

    strcpy(s1, s2);   strcpy函数的意思是:把字符串s2中的内容copy到s1中.连字符串结束标志也一起copy. 这样s1在内存中的存放为:ch\0; 在cout<<s ...