我正在开发机器(P8700 双核 2.53Ghz,4Gb RAM,运行 Xubuntu x64)上使用 nginx 1.4.1 和 Node.js 0.10.5 进行一些测试。不幸的是,我无法处理ab
100000 个请求和 1000 个并发请求。在执行了总数的一小部分后,我收到此错误:
apr_socket_recv:对端重置连接(104)
共计 17641
配置文件对我来说似乎没问题(2个工作程序,每个工作程序最多处理1024个连接):
worker_processes 2;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream node_upstream {
server 127.0.0.1:3000;
server 127.0.0.1:3001;
}
server {
listen 80;
server_name localhost;
location / {
proxy_redirect off;
proxy_pass http://node_upstream;
}
}
}
工作人员在线(ps aux | grep nginx
):
root 20833 0.0 0.0 22404 1292 ? Ss 22:08 0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/balancer.conf
nobody 21022 0.7 0.0 22916 1784 ? S 22:15 0:03 nginx: worker process
nobody 21023 0.7 0.0 22916 1784 ? S 22:15 0:03 nginx: worker process
我认为这与我的操作系统安装无关:我可以使用 Node.js 集群进行相同的测试,并且一切顺利。使用 nginx 和 完成测试ab -n 10000 -c 100
。