我验证了下 好像并不能使用长链接!配置如下:location = /xxxxx/xxxxxxx{ proxy_pass http://xxxxxxx.xxxxxxx.net/xxxxxx/xxxxxxxx; keepalive_requests 1000; keepalive_timeout 15s; proxy_http_version 1.1; proxy_set_header Connection "keep-alive"; proxy_connect_timeout 10; proxy_send_timeout 10; proxy_read_timeout 10;}代理到后端的机器,后端的机器中http请求打印出来的日志 $connection 每次都不一样 $connection_requests 都是1请春哥 给出详细的配置 谢谢!在 2015年10月14日星期三 UTC+8下午3:12:11,agentzh写道:Hello! 2015-10-14 15:05 GMT+08:00 杨白冰: > 春哥,可以实现 域名的动态解析(域名指向的ip 发生变化,nginx可以成功代理到新的机器上) > 希望请教下 有没有一种方法,可以既能实现ip的动态变化,也能保证 nginx与后端的机器是保持的长链接 (A同B > 保持长链接,当域名的指向发生变法,由B变成C后,A同C保持长链接) > > 请问有没有这种方法! > 当然有办法。可以通过正确地配置 keepalive_requests 和 keepalive_timeout 指令来实现连接的有限次数和有限时间的复用。 http://nginx.org/en/docs/http/ngx_http_core_module.html#keepalive_requests 值得一提的是,在 cosocket 的上下文中,也可以通过 getreusedtimes() 来显式地决定当前连接在使用完以后是通过 setkeepalive() 放回连接池继续复用呢,还是通过 close() 直接关闭。 Regards, -agentzh --
Hello! 2015-10-14 15:05 GMT+08:00 杨白冰: > 春哥,可以实现 域名的动态解析(域名指向的ip 发生变化,nginx可以成功代理到新的机器上) > 希望请教下 有没有一种方法,可以既能实现ip的动态变化,也能保证 nginx与后端的机器是保持的长链接 (A同B > 保持长链接,当域名的指向发生变法,由B变成C后,A同C保持长链接) > > 请问有没有这种方法! > 当然有办法。可以通过正确地配置 keepalive_requests 和 keepalive_timeout 指令来实现连接的有限次数和有限时间的复用。 http://nginx.org/en/docs/http/ngx_http_core_module.html#keepalive_requests 值得一提的是,在 cosocket 的上下文中,也可以通过 getreusedtimes() 来显式地决定当前连接在使用完以后是通过 setkeepalive() 放回连接池继续复用呢,还是通过 close() 直接关闭。 Regards, -agentzh