OSGI是一个不错的选择吗?

时间:2014-04-23 08:19:50

标签: java spring osgi

我目前正在开发面向内部的CRM风格应用程序。这需要与许多外部系统集成,并且在这些服务不可用的情况下(通过系统关闭或与之对话的代码被禁用)优雅地降级。

根据我目前的理解,OSGI捆绑包似乎是实现这一目标的完美方式。我们可以在执行维护时关闭特定模块,并且当该服务不可用时,代码可以以不同方式执行操作。

我的问题是,由于Spring显然放弃了OSGI(这个应用程序现在大量使用Spring 4.0),OSGI是否是这个项目的正确选择?有什么替代方法我应该考虑吗?

由于

2 个答案:

答案 0 :(得分:1)

OSGI对于那种问题不是瑞士军刀。与可能有停机时间的外部服务松散耦合的程度高于osgi所能解决的问题。看看feature toogles。如果确定服务有停机时间,则需要实现逻辑来切换切换。

答案 1 :(得分:0)

Apache Camel https://camel.apache.org/可能是更好的选择,因为它的运行级别高于OSGI,这正是您可能需要的,正如SpaceTrucker已经提到的那样。 当您需要集成外部系统时,Camel非常方便。