伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

Tomcat的Windows服务实现方式分析

来源:本站原创 浏览:188次 时间:2021-06-12

在Windows系统中使用Tomcat的用户,一定遇到过把Tomcat安装成系统服务的问题。

我们今天来梳理下Tomcat官方为我们提供的方式。


方式一:

我们可以直接下载Windows的安装版,exe文件,在安装的时候会安装Windows服务。


方式二:

下载对应CPU结构的解压版,此时下载到的文件bin目录下,会包含这样的三个文件,我们以Tomcat6为例:


与一般的解压版相比,多了上面红框中的三个文件。

安装服务时,只需要在命令行中执行如下命令:


service.bat install


之后,在服务Windows的服务列表中,就会增加Apache Tomcat 6的服务项,可以和其他服务一样,进行启动停止等操作。


方式三:

如果你已经在一些脚本中进行了特定配置,此时想要以服务方式安装,可以找一个包含方式二中三个文件的Tomcat,把这三个文件拷贝过来,执行上述的安装命令,也可以完成任务方式的安装。


方式四:

自己通过C++/C#来自行实现服务方式的注册与解注册。


本质上方式二和三是一样的,我们从这三个文件来分析Tomcat服务安装实现原理。

首先来看service.bat中几处主要的内容:

executable:


install命令参数:



我们注意到,在executable中,是执行tomcat6.exe,这个应用程序,实质上是一个Wrapper。


Windows服务需要通过服务管理器以信号或消息的方式与服务进行通信,这种机制,在Windows JVM中并没有特定的实现,所以对于JVM来说并不擅长以Windows服务方式运行。


所以,要实现JAVA应用以Windows服务方式运行,一种常用的方式是以Wrapper的形式,使得服务管理器中的消息可以传递到JVM,从而使应用进行相应的动作。

Apache 的 procrun 项目就是这样一个提供Wrapper的项目。项目可以到这里了解:http://commons.apache.org/daemon/procrun.html.


其中,tomcat6.exe就是procrun项目中的prunsrv,我们安装完的服务,实际上都是在操作这个exe,这个可以查看服务的属性来了解:



我们看到,可执行文件的路径是执行了tomcat6.exe。同时,在应用程序后面,还传入了一个参数。

这个参数是什么意思呢?我们来看下面的说明:



其中,RS就代表通过服务管理器来启动。命令中还包含一个特殊的是MS,即Monitor Start,启动后应用最小化到系统托盘(Tray)。


说了半天都是tomcat6.exe,那tomcat6w.exe是啥呢?

我们双击执行,可以看到这个的画面



这里就是我们在service.bat中指定那一系列参数,即对应的Tomcat的配置信息,传统的我们在catalina.bat中指定了,而服务方式启动,就需要在这里指定。


所以,方式三可以安装成功,是因为这两个exe文件,确实只是一个壳,把相关的信息做成了Wrapper。


以上,即为Tomcat注册为Windows服务的几种方式,以及官方实现的原理。


  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net