永久servlet在服务器启动时加载,直到服务器关机为止。如何在Tomcat 6中配置永久Servlet?
我有要求启动一些服务器端java程序,然后这些程序提供的功能是完全独特的和独立于Web服务器。我希望在Tomcat启动时执行此操作。我看到的解决方案是Permanent Servlet,它将调用这些Java程序。
那么如何在Tomcat 6中配置Permanent Servlets?有关永久Servlet的
更多细节从http://java.sun.com/developer/onlineTraining/Servlets/Fundamentals/servlets.html
临时与永久的Servlet
的Servlet可以启动和停止为每个客户端的请求,也可以作为Web服务器启动和启动在服务器关闭之前保持活动状态。临时servlet按需加载,并提供了一种很好的方法来节省服务器中的资源以减少使用的功能。
永久servlet在服务器启动时加载,直到服务器关闭为止。当服务器的启动成本非常高时(例如与DBMS建立连接),提供服务器端永久性功能(如RMI服务),或者他们必须响应时,Servlet将作为服务器的永久扩展来安装尽可能快地满足客户的要求。
没有特殊的代码来使servlet成为临时或永久的;这是服务器配置的功能。
由于servlet可以在Web服务器启动时加载,因此可以使用此自动加载机制来提供更容易加载的服务器端Java程序。这些程序可以提供完全独一无二的功能,并且独立于Web服务器。例如,servlet可以通过TCP/IP端口提供基于R的服务(rlogin,rsh,...),同时使用servlet请求/响应协议来呈现和处理用于管理servlet的HTML页面。
这看起来像Permanent Servlet的不错选择。但我的问题是如何配置Permanent Servlet? – YoK 2011-04-14 06:43:05
够公平,好问题。我见过的所有东西都说永久性的servlet是一个配置问题,但是我从未见过如何配置它。我知道的最近的是'web.xml'中的元素。尽管我仍然倾向于使用'ServletContextListener',因为它是为你需要的。 –
WhiteFang34
2011-04-14 07:07:37
我有这种感觉(但不幸的是没有证据),默认情况下,servlets是永久的。但是,出于兴趣,如果您需要启动这些servlet来提供“完全独立于Web服务器的功能”,这听起来像他们不依赖于请求响应范例。在这种情况下,为什么不从上下文监听器启动一个或多个线程 - 没有实现作为servlet的功能。 – DaveH 2011-04-14 07:42:00