2012-04-27 74 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