標籤:inux 程式包 修複 logs ext 狀態 demo inf isp
本文轉自https://www.cnblogs.com/zcy_soft/p/3738947.html,寫的非常好,珍藏一下
1. wrapper的意思?
wrapper在此處理解為“封裝”。
2. java service wrapper的作用?
在實際開發過程中很多模組需要獨立運行,他們並不會以web形式發布,傳統的做法是將其壓縮為jar包獨立運行,這種形式簡單易行也比較利於維護,但是一旦伺服器重啟或出現異常時,程式往往無法自行修複或重啟。解決伺服器重啟的傳統做法是編寫一段shell指令碼隨伺服器啟動而運行,但是這樣做只是治標,那麼我們想尋求一種“治本”的方式該怎麼辦呢?Java Service Wrapper通過將java程式封裝成為系統服務,輕鬆的幫我們解決了該問題。
Java Service Wrapper就輕鬆而簡單的為我們解決了這些問題。"Java Service Wrapper":顧名思義,它用於將我們的Java程式封裝成系統服務,這樣就可以隨著系統的運行而自動運行。當然Java Service Wrapper(下面簡稱Wrapper)的功能絕不僅於此。
4. wrapper下載與使用
https://wrapper.tanukisoftware.com/doc/english/download.jsp
通過下載頁面我們可以看到Wrapper幾乎支援所有的系統內容,說明Wrapper在這方面還是很下工夫的,目前最新版本為3.5.20,我們選擇Linux x86版本下載,解壓後目錄組成
如所示:
為了更直觀的瞭解Wrapper的目錄及檔案結構,可以通過"tree"命令列出Wrapper的所有檔案樹,cmd控制台下輸入命令:
以下是官方給出的一些Wrapper的優點:
(1) 使用我們的產品無須在你的程式中添加任何額外的代碼。
(2) 當你的程式或JVM出現問題時會自動響應事先定製的策略。
(3) 當出現問題時會及時進行通知。
(4) 完善的日誌記錄功能可以更好為您提供支援。
(5) 在不同的系統上你可以指定一個標準的流程相同流程,也就是說相同的程式可以不必修改即運行於不同系統。
(6) 可以將你的應用安裝成windows或unix的服務或守護進程。
看到Wrapper有這麼多好處,那麼我們就通過Wrapper內建的樣本程式來進一步瞭解Wrapper吧:
1. 建立服務工作目錄,以作業系統為Linux,目錄結構為usr/local/wrapper為例,按照上面的目錄結構,在其下建立"bin","conf","lib","logs"這四個相同名稱的檔案夾。
2. 將配置及程式檔案複製至相應目錄(也就是上面標★的檔案);
(1) bin 目錄下的wrapper 檔案複製到usr/local/wrapper/bin下。
(2) src\bin 目錄下的sh.script.in 檔案複製到usr/local/wrapper/bin下,並將.in尾碼名刪除並修改名稱,修改後為javaService.script。
(3) conf 目錄下的wrapper.conf 檔案複製到usr/local/wrapper/conf下。
(4) lib 目錄下的wrapper.jar 和libwrapper.so 檔案複製到usr/local/wrapper/lib下。
註:以上是正式環境所需檔案的配置方式,這裡我們需要運行Wrapper內建的demo程式,所以需要將demoapp,demoapp.conf,wrapperdemo.jar 這三個檔案複製到相應目錄。
3. 進入bin目錄執行以下命令:
接下來會顯示很多提示,最終顯示如下頁面:
出現此頁面證明你的程式已經運行成功了,恭喜!
如果啟動失敗,我們可以查看logs日誌內容,如下:
從日誌內容可以查看程式及服務的運行狀態,Wrapper日誌採用此種格式:類型 | 擁有者 | 時間 | 具體內容
日誌內容顯示我們的Linux系統沒有安裝圖形介面或者根本沒有顯卡。
註:這裡需要說明一下,Wrapper運行首先需要Java運行環境支援,所以在使用Wrapper前請先確認已安裝好了Java
下面我們來嘗試一下無參數調用服務的方式,如:
兩者的提示相同,都為:
原來Wrapper提供了很多種參數的選擇,如:start為啟動,stop為停止。下面為參數的詳細解釋:
我們還發現單獨運行wrapper命令時的提示內容與前面兩者不同,如下所示:
因為wrapper是Wrapper啟動並執行主程式也是核心,他無法單獨運行需要通過src/bin中的sh.script.in這個shell指令碼調用,這個檔案的使用我們之後會講到。
運行wrapper可以按如上提示添加參數,如:./wrapper -c wrapper.properties
以上就是對Wrapper的一個整體認識,希望此文可以協助大家更快的上手並使用Wrapper,之後幾篇文章會詳細講解Wrapper的配置及定製自己的應用。
Java Service Wrapper簡介與使用(轉)