Apache Karaf是Apache Felix的子項目。它被定義爲「一個輕量級的OSGi容器」。OSGi:Apache Felix和Apache Karaf有什麼區別?
我不明白什麼時候應該使用重量級和何時使用輕量級。他們的網站沒有太多解釋。
Apache Karaf是Apache Felix的子項目。它被定義爲「一個輕量級的OSGi容器」。OSGi:Apache Felix和Apache Karaf有什麼區別?
我不明白什麼時候應該使用重量級和何時使用輕量級。他們的網站沒有太多解釋。
@Marcel Karaf不像Java EE服務器那樣是單一的或巨大的。這是一個非常苗條和簡約的實現。這是一個核心產品,除了基本的控制檯,文件加載以外,沒有太多的功能,所以你可以真正閱讀配置文件等。它的最新的zip文件是19.1 MB。是啊。小。它可以輕鬆地在小型設備上運行,並可嵌入式工作。
您可能會想到的更像ServiceMix,它使用Karaf作爲核心/內核。但它包含CXF,ActiveMQ,Camel和其他完整配置的庫。即使那樣他們也有最小,中等和全尺寸。
真的,對於99%的項目來說,直接開始使用Felix而不使用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項目維護一個名爲菲利克斯通用OSGi容器。 這裏用作的ServiceMix和
的ServiceMix的和Karaf之間的主要區別是 ServiceMix的捆綁其它集成組件的一堆 - 的ActiveMQ 消息代理,駱駝路由引擎,以及一些其他的事情
謝謝。這清除了困惑:) – GabiMe 2009-10-25 13:28:47
謝謝,偉大而乾淨的解釋。 – eduardohl 2012-08-28 17:05:57
任何OSGi容器的一個很好的功能是你可以只選擇你需要的包並將它們部署到你的容器中。所以我的建議是首先構建你的應用程序,然後選擇你需要的。 「只是因爲功能豐富而安裝整個平臺」的建議聽起來有點像回到龐大的Java EE應用服務器。現在我並不是說Apache Karaf的規模與這些規模相差無幾,我只是提出一個觀點,你可以並且應該部署你實際需要的東西。 – 2014-09-19 06:17:34