溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù)

發(fā)布時(shí)間:2021-08-06 17:33:44 來源:億速云 閱讀:150 作者:Leah 欄目:大數(shù)據(jù)

本篇文章為大家展示了Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù),內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

方式一

我們可以直接下載Windows的安裝版,exe文件,在安裝的時(shí)候會(huì)安裝Windows服務(wù)。

Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù)

方式二:

下載對(duì)應(yīng)CPU結(jié)構(gòu)的解壓版,此時(shí)下載到的文件bin目錄下,會(huì)包含這樣的三個(gè)文件,我們以Tomcat6為例:

Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù)


與一般的解壓版相比,多了上面紅框中的三個(gè)文件。

安裝服務(wù)時(shí),只需要在命令行中執(zhí)行如下命令:

service.bat install

之后,在服務(wù)Windows的服務(wù)列表中,就會(huì)增加Apache Tomcat 6的服務(wù)項(xiàng),可以和其他服務(wù)一樣,進(jìn)行啟動(dòng)停止等操作。

方式三

如果你已經(jīng)在一些腳本中進(jìn)行了特定配置,此時(shí)想要以服務(wù)方式安裝,可以找一個(gè)包含方式二中三個(gè)文件的Tomcat,把這三個(gè)文件拷貝過來,執(zhí)行上述的安裝命令,也可以完成任務(wù)方式的安裝。

方式四

自己通過C++/C#來自行實(shí)現(xiàn)服務(wù)方式的注冊與解注冊。

本質(zhì)上方式二和三是一樣的,我們從這三個(gè)文件來分析Tomcat服務(wù)安裝實(shí)現(xiàn)原理。

首先來看service.bat中幾處主要的內(nèi)容:

executable:

Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù)

install命令參數(shù)

Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù)

我們注意到,在executable中,是執(zhí)行tomcat6.exe,這個(gè)應(yīng)用程序,實(shí)質(zhì)上是一個(gè)Wrapper。

Windows服務(wù)需要通過服務(wù)管理器以信號(hào)或消息的方式與服務(wù)進(jìn)行通信,這種機(jī)制,在Windows JVM中并沒有特定的實(shí)現(xiàn),所以對(duì)于JVM來說并不擅長以Windows服務(wù)方式運(yùn)行。

所以,要實(shí)現(xiàn)JAVA應(yīng)用以Windows服務(wù)方式運(yùn)行,一種常用的方式是以Wrapper的形式,使得服務(wù)管理器中的消息可以傳遞到JVM,從而使應(yīng)用進(jìn)行相應(yīng)的動(dòng)作。

Apache 的 procrun 項(xiàng)目就是這樣一個(gè)提供Wrapper的項(xiàng)目。項(xiàng)目可以到這里了解:http://commons.apache.org/daemon/procrun.html.

其中,tomcat6.exe就是procrun項(xiàng)目中的prunsrv,我們安裝完的服務(wù),實(shí)際上都是在操作這個(gè)exe,這個(gè)可以查看服務(wù)的屬性來了解:

Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù)

我們看到,可執(zhí)行文件的路徑是執(zhí)行了tomcat6.exe。同時(shí),在應(yīng)用程序后面,還傳入了一個(gè)參數(shù)。

這個(gè)參數(shù)是什么意思呢?我們來看下面的說明:

Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù)

其中,RS就代表通過服務(wù)管理器來啟動(dòng)。命令中還包含一個(gè)特殊的是MS,即Monitor Start,啟動(dòng)后應(yīng)用最小化到系統(tǒng)托盤(Tray)。

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

我們雙擊執(zhí)行,可以看到這個(gè)的畫面

Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù)

上述內(nèi)容就是Tomcat中怎么實(shí)現(xiàn)一個(gè)Windows服務(wù),你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI