File tree Expand file tree Collapse file tree 1 file changed +6
-5
lines changed Expand file tree Collapse file tree 1 file changed +6
-5
lines changed Original file line number Diff line number Diff line change @@ -166,11 +166,12 @@ nginx的以下功能模块的相关代码已经阅读,并对其源码及相关
166166
167167改造点及可疑问题:
168168===================================
169- 1. 和后端服务器通过检查套接字连接状态来判断后端服务器是否down机,如果失效则连接下一个服务器。这种存在缺陷,例如如果后端服务器直接拔掉网线或者后端服务器断
170- 电了,则检测套接字是判断不出来的,协议栈需要长时间过后才能判断出,如果关闭掉协议栈的keepalive可能永远检测不出,这时候nginx还是会把客户端请求发往后端服务器,
171- 如果发往后端服务器数据大小很大,可能需要多次write,这时候会由write timeout来判断出后端出现问题。但是如果发往后端数据长度小,则不会添加write定时器,而是通过
172- 写定时器超时来判断,这样不能立刻判断出后端异常,因为读写定时器默认都是60s,参考ngx_http_upstream_send_request,
173-
169+ 1. 和后端服务器通过检查套接字连接状态来判断后端服务器是否down机,如果失效则连接下一个服务器。这种存在缺陷,
170+ 例如如果后端服务器直接拔掉网线或者后端服务器断电了,则检测套接字是判断不出来的,协议栈需要长时间过后才能判断出,
171+ 如果关闭掉协议栈的keepalive可能永远检测不出,这时候nginx还是会把客户端请求发往后端服务器,如果发往后端服务
172+ 器数据大小很大,可能需要多次write,这时候会由write timeout来判断出后端出现问题。但是如果发往后端数据长度小,
173+ 则不会添加write定时器,而是通过写定时器超时来判断,这样不能立刻判断出后端异常,因为读写定时器默认都是60s,
174+ 参考ngx_http_upstream_send_request
174175 2.[限流不准确分析](https://github.com/alibaba/tengine/issues/855)<br />
175176
176177
You can’t perform that action at this time.
0 commit comments