温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Tomcat中怎么实现一个Windows服务

发布时间:2021-08-06 17:33:44 来源:亿速云 阅读:138 作者:Leah 栏目:大数据

本篇文章为大家展示了Tomcat中怎么实现一个Windows服务,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

方式一

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

Tomcat中怎么实现一个Windows服务

方式二:

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

Tomcat中怎么实现一个Windows服务


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

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

service.bat install

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

方式三

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

方式四

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

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

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

executable:

Tomcat中怎么实现一个Windows服务

install命令参数

Tomcat中怎么实现一个Windows服务

我们注意到,在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,这个可以查看服务的属性来了解:

Tomcat中怎么实现一个Windows服务

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

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

Tomcat中怎么实现一个Windows服务

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

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

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

Tomcat中怎么实现一个Windows服务

上述内容就是Tomcat中怎么实现一个Windows服务,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI