2010-01-07 84 views
4

我們已經有了一個Web應用程序產品好幾年了,並且使用Tomcat在Windows下部署它,因爲它將自己註冊爲Windows服務,以便自動啓動和停止。哪個Web容器能夠很好地安裝Windows服務?

我們現在可能碰巧需要比Tomcat提供的更多的Java EE工具(我們非常喜歡容器中的Java EE 6),所以問題是哪些開源Java EE容器可以很好地用作Windows服務。由於Glassfish是目前唯一的Java EE 6實現,如果它運行良好,它會很好,但我希望聽到經驗,而不僅僅是我可以從宣傳手冊中讀到的內容。如果不是,人們還用了什麼?


編輯:這也適用於Web容器,而不僅僅是Java EE容器。我們可能會保留必要的堆棧,直到找到合適的容器並獲得Java EE 6支持。


編輯:我希望這個工作分佈式。我對手動黑客封裝等沒有興趣,但希望安裝過程處理創建和刪除服務。


編輯2012:事實證明,Glassfish的Windows安裝程序可以作爲服務安裝(需要.NET)。組件網站http://kenai.com/projects/winsw。已被證明非常強大。

回答

8

我們使用Tomcat as a service。我們也使用JBoss as a service

可以運行GlassFish as a service

還值得注意的是,大多數商業Java EE容器也可以作爲服務運行。特別是,我知道,以下所有可作爲服務運行,因爲我們已經以這種方式建立起來:

事實上我認爲你很難找到一個無法作爲服務運行的Java EE容器,因爲你總是可以使用Java service wrapper來將任何Java程序作爲服務包裝起來。

由於在另一個答案中提到您可能也對作爲服務運行的Web服務器感興趣,因此可能值得指出的是,Windows,IIS和Apache這兩個大二者都可以作爲服務運行。

編輯:既然你編輯的具體問的是包含安裝Windows服務安裝的Java EE容器:

有可能是其他人,但這些是我唯一使用的。

+0

+1服務包裝。 – Seth 2010-01-12 23:34:08

+0

對我來說服務包裝也是+1 – Nat 2010-01-18 16:02:26

2

我們使用JBoss,它作爲服務運行完美,至今沒有問題。我們甚至用ssh acces加載服務器,所以我們可以在需要時遠程重啓服務。

4

GlassFish v3中有Platform Services Support可與Solaris/OpenSolaris SMF和Windows服務進行交互。據我所知,它只是起作用。

+0

顯示它需要安裝.NET框架才能使「asadmin create-service」命令正常工作。 – 2010-06-21 08:24:40

+0

@Thorbjørn哇,這很糟糕。我不知道這一點,感謝您的反饋。 – 2010-06-21 12:13:06

+0

我相信在.NET中編寫的Glassfish的深處有一個本地的.EXE文件,它可以完成繁重的工作。不知道他們在想什麼:-S – 2010-06-21 12:57:12

2

我已經使用Glassfish(Version 2雖然)作爲Windows服務。儘管安裝它需要一些工作,但一旦安裝完成,它就可以很好地工作。我們在生產環境中使用它,並且我們的設置由兩節點集羣組成(所以我們必須建立一個域,並且兩個節點(在兩個不同的機器上))。

如果我沒有記錯,我的最大挑戰是試圖使用sc,並找出其時髦的轉義序列。另外要看的是Hudson。我一直對它如何將自己安裝爲Windows服務感到印象深刻。你可能想看看他們是如何做到的。儘管他們使用Winstone作爲它們的嵌入式servlet引擎,但據我所知,它不符合EE 6標準。