iPlanet/Tomcat AJP 连接挂起
我们当前的生产 Web 环境使用:
- Web 服务器:Netscape iPlanet v4.1(别笑!)
- Servlet 容器:Tomcat 6.0.32
两者都在不同的服务器上运行 SunOS 5.9(Solaris 9?)。
我们注意到(显然)随机地,Tomcat 上运行的应用程序似乎不可用。进一步调查似乎表明来自 Web 服务器的 AJP 连接似乎被阻止 - 或者至少 Web 服务器无法成功将请求转发到 Tomcat。
有其他人在 iPlanet/Tomcat 上遇到过(并修复过)此类问题吗?
注意:我们意识到 iPlanet v4.1 有点古老,它正在被 Apache HTTP Server 取代,但还不是现在。
Our current production web environment uses:
- Web Server: Netscape iPlanet v4.1 (don't laugh!)
- Servlet Container: Tomcat 6.0.32
Both running SunOS 5.9 (Solaris 9?) on separate servers.
We have noticed that (apparently) randomly, the applications running on Tomcat appear to be unavailable. Further investigation appears to show that the AJP connections from the webserver appear to be blocked - or at least the web-server is unable to successfully forward requests to Tomcat.
Has anyone else experienced (and fixed) such issues with iPlanet/Tomcat?
NB: We realise that iPlanet v4.1 is somewhat ancient, and it is being replaced with Apache HTTP Server, however not just yet.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我们已经成功解决了我们的问题。对于遇到相同问题的任何人,如上所述,问题在于 iPlanet mod_jk 连接器 (v1.2.22) 中存在错误,该错误除其他外不重用现有连接,而是为每个请求创建新连接。
解决方案是获取更新的驱动程序(撰写本文时为 v1.2.32),该驱动程序修复了此问题以及其他问题,使连接器不仅更加强大,而且还将吞吐量提高了 4 倍以上!
可以在 Tomcat 站点上找到更新的驱动程序。
对于不使用 Windows 或 Netware 的用户,您将需要构建自己的驱动程序,这取决于您的 C 知识水平,这可能有点棘手,因为我们必须多次修改源代码以添加缺少的标头。
希望这会对那里的人有所帮助!
We have managed to solve our issue. For anyone experiencing the same issue, as described above, the problem is that there is a bug in the iPlanet mod_jk connector (v1.2.22), which amongst other things, does not reuse existing connections, instead it creates new connections for each request.
The solution is to obtain a more up-to-date driver (v1.2.32 at time of writing), which fixes this issue, and others, making the connector not only much more robust, but also increases throughput by more than 4 times!
The updated driver can be found on the Tomcat site.
For users who are not using Windows or Netware, you will need to build you own driver, which depending on the level of your C knowledge, may be a little tricky, as we had to modify the source several times to add missing headers.
Hopefully, this will help somebody out there!