问题描述
nginx+tomcat 集群搭建
但是每天7,8点老是开始出现502 bad Gateway。
能否有人帮我分析下各种情况发生的原因?
error.log记录
2014/10/07 07:59:47 [error] 7783#0: *90920 connect() failed (111: Connection refused) while connecting to upstream, client: 124.133.28.7, server: xx.com, request: 'GET / HTTP/1.1', upstream: 'http://127.0.1.1:8888/', host: 'xx.com'
问题解答
回答1:直接在服务器上通过http://127.0.1.1:8888/访问,看下站点是否可用,然后再判断是否nginx配置问题。
回答2:给你的upstream增加keepalive配置没有?
upstream backend { server http://127.0.0.1:8888; keepalive 32;}
在nginx和backend之间建立长连接,大量请求时避免反复创建tcp连接,否则就容易出502
我看你这个状况跟具体时段相关,估计就是这个时段的并发请求比较大导致的
另外就是看下你的应用服务器在这个时段的内存、CPU占用什么的,代码bug导致应用服务器无法响应更多的连接也是一种可能
回答3:可能是tomcat服务器出问题或者代码有BUG
看看tomcat的log,可能会有相关信息
回答4:tomcat 服务器不可访问的时候,ngnix会报502