2012-04-27 82 views
13

我什麼時候會選擇部署爲JBoss SAR而不是EAR?JBoss SAR vs EAR/WAR包裝

這更像是一個普遍的問題,我正在尋找指導原則來解釋每種部署模式的優缺點,以及哪種模式適用於何種情況。

回答

23

當您想要擴展服務器的功能時,您將構建一個SAR(服務檔案)。例如,JBoss使用SAR部署EJB部署器或消息傳遞。您可以創建一個用於您自己的服務監控(即查看您的某個自定義服務的某些指標)。據我所知,SARs只適用於JBoss。

從我個人的經驗來看,我曾經創建了一個SAR來追蹤一個Web服務。我主要使用服務組件來跟蹤Web服務組件創建的事物列表的長度。這是我可以在jmx控制檯中查找的一種方法,並找出有關傳入Web服務請求的一些度量標準。

SARs基於JMX規範,因此創建它們並不困難。您基本上創建一個標準的MBean接口並實現該接口。您還需要確保您在META-INF目錄中有一個jboss-service.xml文件。

另一方面,WARs和EAR適用於您希望容器管理和處理應用程序請求的標準應用程序包裝。您不希望應用程序像SAR打包應用程序那樣作爲匿名服務組件運行。

希望這會有所幫助!

+0

SARs似乎不是JBoss特有的;例如,WebSphere似乎支持它們(請參閱[documentation](http://pic.dhe.ibm.com/infocenter/wasinfo/v8r0/index.jsp?topic=%2Fcom.ibm.websphere.express.doc%2Finfo %2Fexp%2Fae%2Fcrun_app_install.html))。 – 2014-02-07 18:25:39

+1

經過仔細檢查,WebSphere使用SAR來表示「會話初始協議(SIP)歸檔」,它可能與「服務歸檔」不同。 – 2014-02-07 18:26:33

+0

也許如此。我對Websphere並不熟悉。感謝您的評論,這是一個很好的信息。 – CoolBeans 2014-02-07 21:02:43