Apache Karaf是Apache Felix的子项目。它被定义为“轻量级OSGi容器”。
我不知道什么时候应该使用重量级的东西,什么时候应该使用轻量级的东西。他们的网站并没有解释太多。
Apache Karaf是Apache Felix的子项目。它被定义为“轻量级OSGi容器”。
我不知道什么时候应该使用重量级的东西,什么时候应该使用轻量级的东西。他们的网站并没有解释太多。
Answers:
在“轻量级的OSGi容器”标签对比Karaf与功能更丰富的OSGi容器,不与菲利克斯。
引述纪尧姆机Nodet(Karaf的作者)从这里:
Felix只是OSGi核心运行时。Karaf通过添加其他功能(例如控制台,SSH远程处理机制,文件部署器等),基于Felix提供了“分发”。
在此Karaf体系结构图中,Felix(或其他OSGi实现-当前也支持Equinox)是OSGi框,其他框是Karaf添加的功能:
因此,除非您有Karaf无法满足的特定需求(需要访问基础实现),否则通常使用此选项是有意义的,因为它提供了更多的“即用型”功能。
当前,有三种流行的开源OSGi容器:
- Equinox. It is the modular Java runtime at the heart of the Eclipse IDE, - Knopflerfish, Is an open source implementation of the OSGi R3 and OSGi R4 specifications. - Apache Felix. Is the open source OSGi container from the Apache Software Foundation.
Apache项目维护着一个称为Felix的通用OSGi容器。这里用作ServiceMix和
ServiceMix和Karaf之间的主要区别在于ServiceMix捆绑了许多其他集成组件— ActiveMQ消息代理,Camel路由引擎以及其他一些东西