测试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. JS常见的四种设计模式

    1 工厂模式 简单的工厂模式可以理解为解决多个相似的问题; function CreatePerson(name,age,sex) { var obj = new Object(); obj.name ...

  2. [luogu2317 HNOI2005] 星际贸易 (dp)

    传送门 Solution 两个dp分开处理, 第一问什么都不考虑直接dp 第二问还有些疑惑,姑且先留坑 Code //By Menteur_Hxy #include <cstdio> #i ...

  3. [bzoj4477 Jsoi2015]字符串树 (可持久化trie)

    传送门 Solution 复习下tire( ̄▽ ̄)/ 裸的可持久化tire,我用树剖求了下LCA Code #include <cstdio> #include <cstring&g ...

  4. C# 通过反射为一个对象赋值

    /// <summary>   /// 反射赋值   /// </summary>   public class ObjectReflection   {       publ ...

  5. Java开发编码规范

    第一章 代码开发规范及其指南 一.1 目的 定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失.(这些规范并不是一定要绝对遵守,但是一定要让程序有 ...

  6. JAVA集合泛型,类型擦除,类型通配符上限之类的知识点

    感觉定义要比PYTHON严谨很多,一切源于静态语言的特点吧.. 于是语法上就复杂很多,值不值得呢? 参考测试URL: http://www.cnblogs.com/lwbqqyumidi/p/3837 ...

  7. VS的代码管理工具

    参考文章 可以从中知道修改代码段是要打开相关路径下的文档来修改 官方下载地址 百度云盘 如果项目中国有一些代码重复率非常高,可以把这些代码做成snippet代码段,简化成快捷键命令,加速开发

  8. [bzoj2186][Sdoi2008]沙拉公主的困惑_数论

    沙拉公主的困惑 bzoj-2186 Sdoi-2008 题目大意:求N!中与M!互质的数的个数. 注释:$1\le N,M\le 10^7$. 想法:显然是求$\phi(M!)$.这东西其实只需要将数 ...

  9. 在Map对象中获取属性,注意判断为空

    在Map对象中获取属性,注意判断为空 public static void main(String[] args) { Map map = new HashMap(); Integer i = (In ...

  10. libyuv库的使用

    libyuv是Google开源的实现各种YUV与RGB之间相互转换.旋转.缩放的库.它是跨平台的,可在Windows.Linux.Mac.Android等操作系统.x86.x64.arm架构上进行编译 ...