关于nginx 出现accept4() failed错误问题

问题描述

关于nginx 出现accept4() failed错误问题

nginx作代理,用ab去压的时候(比如:ab -n 100000 -c 100000),没过多久ab反馈拒绝连接了,然后看到任务管理器中有一个nginx进程一直占用着CPU(如果是双核就占50%,换了一台8核的,就占用12%左右),错误日志猛增,内容都是2015/01/28 10:43:22 [alert] 11180#0: accept4() failed (22: Invalid argument) 这样的,若把ab的并发请求改小一些,可以通过。
想请问一下
1.出这样错的时候,是不是说nginx承受不住了,需要调优
2.出错后,服务就一直拒绝访问,错误日志也一直增加,等了很久都没有停下来,只有重启nginx才行,这种情况正常吗,感觉好像是nginx处理出现死循环了一样

另外我是在windows下跑的nginx

感谢所有回答我的朋友,我再补充说明一下,以上是我用ab测试的情况,这个并发量大nginx承受不了,我可以理解,我只是觉得在ab测试结束后,已经没有访问了,上面说的错误情况还是一直都有,没有消失,只能重启nginx,这点很影响实际应用。

实际应用中现象是,nginx正常启动,一切都正常,访问量也不大,50个人不到,并发量也不大,在经过一段时间后,会突然出现上面报错的情况,其它现象和上面描述的一样,只能重启nginx

解决方案

10w并发,nginx应该抗不住了。需要降低并发了。或者用前段proxy,负载均衡

解决方案二:

accept4是建立连接时的系统调用,虽然ngxin很强大10w并发量还是太大了,实际应用中你的用户量能有多大呢?如果日活不过几十w,那并发数过百基本也就够了。
访问量更大的话,单机nginx肯定扛不住,需要考虑做多机负载均衡。

时间: 2024-09-16 04:42:51

关于nginx 出现accept4() failed错误问题的相关文章

解决nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed错误

风信网(ithov.com) 原创文章: 重新启动服务器,访问web服务发现无法浏览啦!登陆服务器之后进到nginx使用./nginx -s reload重新读取配置文件,发现报nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)错误,进到logs文件发现 的确没有nginx.pid文件 &http://www.aliyun.com/zixun/

nginx-httpclient访问Nginx集群404错误

问题描述 httpclient访问Nginx集群404错误 在使用httpClient范文Nginx做的集群时,出现404错误.在浏览器中访问正常.发现原因是不知道哪块配置的不正确导致url套了两层二级目录.nginx集群配置如下 upstream weibo { ip_hash; server 10.30.30.152:8080 weight=2 fail_timeout=5; server 10.30.30.155:8080 weight=2 fail_timeout=5; server 1

nginx 502 Bad Gateway 错误解决办法

 一些运行在Nginx上的网站有时候会出现"502 Bad Gateway"错误,有些时候甚至频繁的出现.以下是小编搜集整理的一些Nginx 502错误的排查方法,供参考: Nginx 502错误的原因比较多,是因为在代理模式下后端服务器出现问题引起的.这些错误一般都不是nginx本身的问题,一定要从后端找原因!但nginx把这些出错都揽在自己身上了,着实让nginx的推广者备受置疑,毕竟从字眼上理解,bad gateway?不就是bad nginx吗?让不了解的人看到,会直接把责任推

VPS频繁提示Nginx 502 Bad Gateway错误的解决办法

这是一篇非常有价值的文章,在我们的Linux生产环境实际使用过程中,Nginx也难免会出现这样或是那样的故障,而502 Bad Gateway也是最常见的故障之一,所以整理出Nginx 502 Bad Gateway的一些解决方案!现在Nginx在Webhttp://www.aliyun.com/zixun/aggregation/18665.html">应用领域也是越来越广泛,有很多大型的互联网公司,或是Web站点都将运行平台移植到Nginx中,而相对于Apache所占市场的比例,Ngi

Nginx服务器中414错误和504错误的配置解决方法_nginx

414 Request-URI Too Large #客户端请求头缓冲区大小,如果请求头总长度大于小于128k,则使用此缓冲区, #请求头总长度大于128k时使用large_client_header_buffers设置的缓存区 client_header_buffer_size 128k; #large_client_header_buffers 指令参数4为个数,128k为大小,默认是8k.申请4个128k. large_client_header_buffers 4 128k; 当http

struts2.0 Dispatcher initialization failed错误,求大神给指点

问题描述 struts2.0 Dispatcher initialization failed错误,求大神给指点 webxml: <?xml version="1.0" encoding="UTF-8"?> xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schem

nginx 502 Bad Gateway 错误解决办法_nginx

一些运行在Nginx上的网站有时候会出现"502 Bad Gateway"错误,有些时候甚至频繁的出现.以下是小编搜集整理的一些Nginx 502错误的排查方法,供参考: Nginx 502错误的原因比较多,是因为在代理模式下后端服务器出现问题引起的.这些错误一般都不是nginx本身的问题,一定要从后端找原因!但nginx把这些出错都揽在自己身上了,着实让nginx的推广者备受置疑,毕竟从字眼上理解,bad gateway?不就是bad nginx吗?让不了解的人看到,会直接把责任推在

svn上传报Authorization failed错误解决办法

svn上传文件时没有弹出用户登录界面,而是直接报Authorization failed错误.出现该问题基本都是三个配置文件的问题,下面把这个文件列出来 svnserve.conf配置文件中的 [general] anon-access = read auth-access = write password-db = passwd authz-db = authz 注意:这几个配置项都需要在[general]配置项下. passwd配置文件 [users] admin=123 authz配置文件

Nginx中常见问题与错误处理

1.400 bad request错误的原因和解决办法 配置nginx.conf相关设置如下. client_header_buffer_size 16k;large_client_header_buffers 4 64k; 根据具体情况调整,一般适当调整值就可以. 2.Nginx 502 Bad Gateway错误 proxy_next_upstream error timeout invalid_header http_500 http_503; 或者尝试设置: large_client_h