Apache代理返回502解决方案
错误日志:
解决方案:
ProxyPass /test/ http://127.0.0.1:92/test/ retry=1 acquire=300 timeout=300
ProxyPassReverse /test/ http://127.0.0.1:92/test/
timeout
链接超时时间,单位为秒。如果未设置,那么Apache会一直等到有可用的链接 位置。
1. 接收GET请求的所花费的时间总和
2. POST或者PUT请求时发送TCP包给服务器的间隔(不是间隔时间之和)
3. 发送响应时发送TCP包的间隔(不是间隔之和)
这里我们更关心第3点.
也就是说, 就算timeout设置了1s, 服务器处理请求的时间完全可以超过1s, 只要服务器每隔不超过1s的时间就发送一点数据到客户端即可
服务器跟客户端的交互并不是一气呵成的,需要 连接通信--间隔若干时间--继续通信--间隔若干时间... 这样反反复复
摘自:https://blog.csdn.net/jaray/article/details/25139415
KeepAlive
KeepAlive配置的含义:对于HTTP/1.1的客户端来说,将会尽量的保持客户的HTTP连接,通过一个连接传送多份HTTP请求响应。这样
对于客户端来说,可以提高50%左右的响应时间,而于服务器端来说则降低了更多个连接的开销。不过这个依赖于客户端是否想保持连接。
IE默认是保持连接的,当你打开100个图片的网站时,IE有可能只打开2个连接,通过这两个连接传送数据,而不是开100个连接。
在 Apache 服务器中,KeepAlive 是一个布尔值,On 代表打开,Off 代表关闭,这个指令在其他众多的 HTTPD 服务器中都是存在的。
KeepAliveTimeout 为持久连接保持的时间,也就是说,在这此连接结束后开始计时,多长时间内没有重新发送HTTP请求,就断掉连接。
默认设置为5秒,这个值可以大点,但不能太大,否则会出现同时等候过多连接,导致多的内存被占用。
在内存非常充足的服务器上,不管是否关闭 KeepAlive 功能,服务器性能不会有明显变化;
如果服务器内存较少,或者服务器有非常大量的文件系统访问时,或者主要处理动态网页服务,关闭 KeepAlive 后可以节省很多内存,而
节省出来的内存用于文件系统Cache,可以提高文件系统访问的性能,并且系统会更加稳定。
摘自:http://www.xuebuyuan.com/67402.html
ProxyPass /test/ http://127.0.0.1:92/test/ retry=1 acquire=3000 timeout=3000
ProxyPassReverse /test/ http://127.0.0.1:92/test/