NGINX不断向上游发送请求
我有以下负载平衡配置:
虽然我的后端节点稳定,但一切正常.但是,当我关闭其中一个节点(例如10.10.10.2)时,NGINX将继续向其发送流量,即使请求保持超时(因为服务器已关闭).我已经尝试设置max_fails和fail_timeout参数,但行为仍然相同. NGINX是否能够自动检测服务器是否已关闭而不是在那里发送流量?我错过了什么配置? 最佳答案 什么是keepalive?keepalive背后的想法是解决在高延迟网络上建立TCP连接的延迟.建立TCP连接需要3次握手,因此,当客户端和服务器之间存在可感知的延迟时,keepalive会通过重用现有连接来大大加快速度. 为什么大家会把nginx放在他们的后端? Nginx非常有效地处理成千上万的连接,而许多后端因此不会加快速度,人们经常将nginx放在他们真正的Web服务器前面以加快速度,因此云与用户之间的连接将是缓存keepalive以便后续重用. 请注意,根据http://nginx.org/r/keepalive,nginx甚至不支持上游keepalive,因为如上所述,如果你有亚毫秒的延迟,它更有可能使用更多的上游资源而不是加速任何处理.在所有主机之间(例如,在nginx和上游服务器之间). 你看到它的去向吗? 通过在LAN上使用过多的keepalive连接,每个上游服务器只需几百个连接,即使您没有像您所描述的那样遇到问题,也可能只会使速度变慢,而不是更快. 服务/端口关闭时会发生什么? 通常,当主机上的给定端口不可用时,主机立即返回TCP reset packet,known as
您的上述评论可能表明缺少及时连接拒绝的数据包肯定会混淆nginx – 您的设置似乎可能只是丢弃nginx发送的数据包.如果没有对请求做出任何回应,那么如何才能知道您的后端服务是否不可用,而不仅仅是展示企业级行为? 应该怎么做? >首先,正如已经提到的,即使你没有遇到你描述的问题,你也可能只是通过在局域网上使用上游保持活动功能来减慢速度,特别是在这么高的情况下. 这可能包括 (编辑:鄂州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- webserver – 使用nginx返回自定义403错误页面
- ruby-on-rails – 如何使用不同的rails_env与nginx,passeng
- 正则表达式 – 与uri端口的nginx代理重定向
- Nginx阻止/拒绝访问多个位置正则表达式
- 在django nginx wsgi中,什么是“mysite.sock”
- linux – 使用nginx提供1GB文件的最佳文件系统,在适度写入,
- Python瓶vs uwsgi / bottle vs nginx / uwsgi / bottle
- nginx – 上传超时(110:连接超时)静态内容?
- 设置Nginx以将一台服务器上的失败请求代理到另一台服务器
- nginx – 代理时如何转发HTTP端口的值?
- 网络 – 为什么request_time比nginx access.log中
- nginx与javascript文件过期(由PHP动态生成)
- nginx – 在更新时提供过时的缓存响应
- node.js-如何为Heroku Node.js Web应用程序配置N
- ruby-on-rails – 乘客NGINX模块失败
- json – 如何在proxy_pass中设置内容类型?
- ubuntu – 分析uwsgi strace日志以找出为什么它需
- Nginx反向代理到另一个提供静态文件的Nginx服务器
- 如何从PHP禁用nginx gzip?
- Nginx为WordPress的/ wp-admin / root提供404错误