服务器遇到大量请求(如压测)出现502 504

2018-04-20  本文已影响0人  欢喜明

tomcat、gunicorn、uwsgi在大量并发时,遇到普遍的问题是502 504问题;

说到502,我们知道后端处理过慢需要扩展worker;

说到504,我们知道处理超时,一般调整timeout就可以;

那么502,504问题的根本原因是什么?   

socket 内部是有两个队列,一个syn队列,一个是accept队列,这两个队列都在accept()之间就有了。 backlog是syn和accept队列之和。当后端处理不及时,backlog又到限制时,会出现502,也就是说新的客户端不能建立,因为没有syn的槽位供你三次握手。 504 的话,处理超时,中断处理,直接返回错误信息。

上一篇 下一篇

猜你喜欢

热点阅读