nginx win32 版本静态文件测试 (Windows环境)_win服务器

下载了 Nginx For Win32 的官方版本 nginx 0.7.53

进行了试用以及压力测试。

安装使用方式很简单,直接贴官方的方式:
Win32 Binaries

As of 0.7.52, Nginx is now available as an official Windows binary.

Installation:

cd c:\
unzip nginx-0.7.52.zip
ren nginx-0.7.52 nginx
cd nginx
start nginx

Control:
nginx -s [ stop | quit | reopen | reload ]

For problems look in c:\nginx\logs\error.log or in EventLog.

但要说明一下的,之前有第三方编译的 Nginx For Windows 版本,是可以加载到 Windows 服务中运行的。但在这个官方版本下该方法行不通。所以建议暂时手动启动,或者新建一个计划任务开机启动。

然后迫不及待进行压力测试。我们使用的工具是 Apache 的 ab , 测试的是纯静态页面。就是 Nginx 一装好后默认的 :
Welcome to nginx!

测试命令:./ab -c 100 -n 10000 http://192.168.3.50:8888/
操作系统:Windows server 2003 R2
硬件配置:Xeon 2.8G X2 1G RAM
测试结果:

Server Software: nginx/0.7.53
Server Hostname: 192.168.3.50
Server Port: 8888

Document Path: /
Document Length: 151 bytes

Concurrency Level: 100
Time taken for tests: 107.329 seconds
Complete requests: 10000 (100%处理请求,没有丢失)
Failed requests: 0
Write errors: 0
Total transferred: 3620000 bytes
HTML transferred: 1510000 bytes
Requests per second: 93.17 [#/sec] (mean) 每秒处理请求 93.17 个
Time per request: 1073.293 [ms] (mean)
Time per request: 10.733 [ms] (mean, across all concurrent requests)
Transfer rate: 32.94 [Kbytes/sec] received

Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 13 44.3 2 550
Processing: 180 1059 350.5 1065 2665
Waiting: 178 1053 352.3 1058 2664
Total: 194 1071 351.9 1074 2668

Percentage of the requests served within a certain time (ms)
50% 1074
66% 1162
75% 1215
80% 1288
90% 1547
95% 1694
98% 1853
99% 1946
100% 2668 (longest request)
################

由测试结果所得,Nginx for windows 100 个线程每秒只能处理 93 个请求。
如果再启动多一个 ab 来压,加起来就有200个线程,ab结果相当。各端每秒处理93个请求。
但如果你再启动第三ab 进行 100 个线程压力,正在进行的2个ab 其中一个就会被服务端拒绝。

来回尝试修改Nginx的worker_processes 参数无果,修改了 Win2003 的并发线程也无果….难道 Nginx 在Windows下就只能有这么点能耐??回头要再详细找找原因。

另外还有一个问题,当压力测试完毕了,在 windows 中查看进程会发现 Nginx 还占着 2~30 的cpu。
在命令行下 Nginx -s stop 也无法停止。必须 结束进程…..

################

初步尝试就这几点,希望是我个别的问题,有机会的朋友也不妨试试。

配置 PD930 CPU,2G 内存,测试结果如下:

C:\>ab -n 10000 -c 100 http://192.168.1.8/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking 192.168.1.8 (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests

Server Software: nginx/0.7.52
Server Hostname: 192.168.1.8
Server Port: 80

Document Path: /
Document Length: 151 bytes

Concurrency Level: 100
Time taken for tests: 5.109 seconds
Complete requests: 10000
Failed requests: 0
Write errors: 0
Total transferred: 3620000 bytes
HTML transferred: 1510000 bytes
Requests per second: 1957.19 [#/sec] (mean)
Time per request: 51.094 [ms] (mean)
Time per request: 0.511 [ms] (mean, across all concurrent requests)
Transfer rate: 691.90 [Kbytes/sec] received

Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 2.4 0 16
Processing: 16 50 13.3 47 78
Waiting: 0 34 14.4 31 78
Total: 16 51 13.3 47 78

Percentage of the requests served within a certain time (ms)
50% 47
66% 63
75% 63
80% 63
90% 63
95% 63
98% 63
99% 78
100% 78 (longest request)

时间: 2024-09-19 23:56:30

nginx win32 版本静态文件测试 (Windows环境)_win服务器的相关文章

如何在nginx中缓存静态文件

这篇教程说明你应该怎样配置 nginx.设置 HTTP 头部过期时间,用 Cache-Control 中的 max-age 标记为静态文件(比如图片. CSS 和 Javascript 文件)设置一个时间,这样用户的浏览器就会缓存这些文件.这样能节省带宽,并且在访问你的网站时会显得更快些(如果用户第二次访问你的网站,将会使用浏览器缓存中的静态文件). 1.准备事项 我想你需要一个正常工作的 nginx 软件,就像这篇教程里展示的:在 Ubuntu 16.04 LTS 上安装 Nginx,PHP

如何在 nginx 中缓存静态文件

这篇教程说明你应该怎样配置 nginx.设置 HTTP 头部过期时间,用 Cache-Control 中的 max-age 标记为静态文件(比如图片. CSS 和 Javascript 文件)设置一个时间,这样用户的浏览器就会缓存这些文件.这样能节省带宽,并且在访问你的网站时会显得更快些(如果用户第二次访问你的网站,将会使用浏览器缓存中的静态文件). 1.准备事项 我想你需要一个正常工作的 nginx 软件,就像这篇教程里展示的:在 Ubuntu 16.04 LTS 上安装 Nginx,PHP

win2008 iis7/iis7.5下最简单最强安装多版本PHP支持环境_win服务器

利用PHP Manager,windows 2008 R2 IIS7.5安装多版本PHP环境 个人对在windows 2008 R2上,在iis环境中配置安装php环境实践中的注意点: 1.如需要在服务器上配置mysql的话,在配置php环境前先安装mysql.(根据自己的需求,下载相应的mysql版本)     mysql安装配置步骤请查看:http://www.jb51.net/article/39188.htm sqlserver 2008安装:http://www.jb51.net/ar

win7下搭建nginx+php的开发环境_win服务器

一.下载相关软件 nginx下载:http://nginx.org/en/download.html nginx常见异常:http://feiger.cn/?p=2719 php下载:http://windows.php.net/download#php-7.0 下载RunHiddenConsole:http://www.xdowns.com/soft/1/71/2012/Soft_89261.html 二.配置 nginx.conf文件,我的编辑结果如下所示,具体配置过程中需要注意什么请看注释

windows下使用IIS配置的PHP无法上传文件的解决方法_win服务器

延续<Windows Server 2003中iis配置php>一文 服务器上使用Apache2+PHP正常运行,换成IIS+PHP,先后出现了php.ini的环境变量无法读取,php中验证码无法显示的问题,如今又有人反应无法上传图片的问题. 从IIS替换Apache2的过程仅仅是开启IIS,关闭Apache2,其它的没什么变化,但是却发生了如此多的差异,看样子IIS支持PHP还是有很多要进行修改的. 分析: 根据上面的描述,我怀疑问题出在IIS的权限配置上,IUSR_MACHINE的帐户对u

Windows Server 2003服务器无法下载.exe文件的解决方法_win服务器

今天架设了一台Windows Server 2003的网站服务器,发现打开网页后无法下载网站中的.exe文件,经过研究问题得以解决,拿来做个备忘. 解决方法非常简单,只需要在IIS中,将网站属性里的执行权限设置为"纯脚本"即可. 附:Windows Server 2003服务器无法下载EXE为后缀的文件解决办法 实际操作过程中只进行了第二步就成功了, 即:打开iis管理器,右键网站-点击属性-主目录,将执行权限设置为"无"或者"纯脚本",即取消&

Windows 2008 R2 用PHP Manager for IIS 配置PHP(FastCGI)环境_win服务器

由于微软已逐步开始重视PHP ON Windows的应用,相继推出了Microsoft Web Platform,PHP Manager等IIS平台工具,x86和x64系统均可使用,再也不用为在IIS上配置PHP而烦恼了,PHP Manager用途如下: *关联PHP和IIS *并列运行多个PHP版本在同一台服务器上,甚至在同一网站 *检查PHP运行时配置和环境(的phpinfo()函数的输出) *配置各种PHP设置 *启用或禁用PHP扩展 *远程管理php.ini PHP配置文件 所以一直想体

windows下安装pear及phpunit(注意配置好php命令行环境)_win服务器

安装环境 在安装PEAR之前需要配置安装PHP环境,如果没有自带PEAR (直接访问http://go-pear.org并保存其首页为go-pear.php) PEAR安装准备 如果PHP运行环境没有自带PEAR,则需要下载go-pear.php文件,同时保存在php.exe所在的目录下. PEAR安装步骤 1.我这里用的是wamp集成环境,d:\wamp\bin\php\php5.2.5>go-pear,开始自动安装. 通过这个PEAR安装截图,可以看到首先需要确认PEAR的安装目录结构,系统

Windows服务器关闭当先安全设置不允许下载该文件的解决方法_win服务器

大家在使用服务器的时候,刚登陆上桌面无法下载软件,是因为ie默认选项的问题,可以通过如下几种方法设置一下即可.   文字版: 为了安全,Windows服务器默认禁用了从网上下载文件的安全选项.此错误即是出现在这里,所以打开这个选项即可: 控制面板 -- Internet选项 --安全 -- 找到"自定义级别" -- 找到"下载"项,其中有"文件下载"勾选框,勾选"启用"即可. 环境:Windows Server 2003 En