我们正面临着一个奇怪的问题….我们有一个繁忙的服务器…和响应时间约1分钟每请求(非常缓慢)…..这是运行在Tomcat的…..如果我们访问网站与xyz.com:8080其超快速(1 Req /秒)…..我们正在使用Mod_Proxyredirect请求到Tomcat …..我的问题,而不是从Apache传递请求到tomcat我们可以直接发送请求到tomcat …或者我们需要在Apache中的一些configuration…….
这里是Httpd.conf文件的外观
ProxyPreserveHost On ProxyPass / http://localhost:8080/ retry=1 acquire=300 timeout=60 Keepalive=On ProxyPassReverse / http://localhost:8080/ ErrorLog /Path/To/Logs/Apache.log LogLevel warn
我认为你的Apache运行速度很快,但对于Tomcat请求只是很慢? 问题不完全清楚,如果你的Apache本身很慢,那么你需要看看。 只有一个进程可以监听端口80,所以如果你不想指定端口,你将不得不通过Apache。 或者完全抛弃Apache,而是让tomcat在端口80上监听。 但是Apache应该足够快来代理这个。
如果Apache本身速度很快,但是代理的Tomcat请求速度很慢,我可以提出一些build议:
这可能是一个缓慢的DNS查找,但在本地主机上很less见。 我认为localhost是在主机文件? 你可以改变这个127.0.0.1,所以你不需要一个DNS查找?
你需要所有这些选项吗?
不明白为什么他们会造成问题,但没有使用它们,所以首先build议是撕掉它们,看看是否改善了事情。 那么,如果你需要他们,把他们一个接一个地加回来,看看问题出在哪里。
所以我会简化和取代这个:
ProxyPass / http://127.0.0.1:8080/ ProxyPassReverse / http://127.0.0:8080/
然后再试一次。
我也假定你正在加载mod_proxy? 有时最简单的东西可能会被错过;-)