下载了 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 $>