gpt4 book ai didi

java - OSGi 与 jboss 热部署

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:53:02 24 4
gpt4 key购买 nike

据我了解,在 OSGi 中,您可以在运行时更新 jar,而无需重新启动服务器。但是jboss也有hot-deployment,就是全ear更新,服务器还在运行。

那么 OSGi 在 jboss 中的企业 java 项目中有什么好处?

最佳答案

我相信答案与每个 OSGi 用例相同:模块化和更精细的更新粒度。

OSGi 不仅仅是在运行时更新 jar 而无需重新启动服务器。从您的问题的角度来看,它是在运行时更新 jar 而无需重新启动应用程序

我承认我不知道 JBoss AS 中 EAR 热部署的具体实现,但无论如何 EAR 更新不可能被设计成保留应用程序的整个状态。服务器仍在运行,但您实际上是在更新后重新启动应用程序。这种状态丢失的程度实际上取决于您如何设计您的应用程序,但事实仍然是您正在独立地做事。

对于 OSGi,情况并非如此:应用程序由大量 bundle 组成,每个 bundle 都有望设计用于处理功能的单独部分。这种方法可以实现应用程序内的热部署,因为框架的设计考虑了重启任何一个 jar 对整个应用程序带来的影响,并让其他 jar 做出适当的 react 。这提供了尽可能多地保留应用程序状态的能力。

因此,OSGi 设计在企业案例中的优势在于应用程序的活跃度。无需强调这一点的重要性。确实,有些用例可以安全地重启应用程序。但在我看来,OSGi 是当今 Java EE 唯一真正可扩展和可维护的选择。最重要的应用程序服务器已经(或将要)转移到 OSGi 运行时(并因此提供 OSGi 应用程序支持)这一事实就是证明。

关于java - OSGi 与 jboss 热部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7679536/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com