2009-07-17 103 views
0

我有一个在Tomcat中运行的轴web服务。客户端正在进行连接,但不会在HTTP 1.1中发送Connection:close header,这意味着默认设置为Keep-Alive。不幸的是,客户端似乎遇到了问题,当它发生异常时,客户端没有关闭连接。由于这些客户端在批量作业中发送大量流量,这很快耗尽了我所有的连接。一旦特定的Handler(扩展BasicHandler)完成,我想强制我的Web服务关闭每个连接。Axis Web Service保持活跃

我该怎么做?即如何在调用BasicHandler#invoke()后强制服务器关闭连接?

回答

2

在你的tomcat的server.xml文件中,找到HTTP连接器定义(这是有协议的元素= “HTTP/1.1”),并添加的KeepAliveTimeout属性,如下详细说明:

http://tomcat.apache.org/tomcat-6.0-doc/config/http.html

你将不得不尝试不同的值,看看哪些给你你想要的行为。请查看其他设置,其中一些可能对您有用。

请注意,这是Tomcat 6文档,因此并非所有选项都可以在tomcat 5上运行,因此请检查tomcat 5文档的相同部分。

+0

我知道这个选项。问题在于它是服务器广泛的。我不想惹我的JSP和servlet保持活动超时。只是这一个Web服务。 – jcb 2009-07-17 15:29:03