osgi - ओएसजीआई: अपाचे फेलिक्स और अपाचे कराफ के बीच अंतर क्या हैं?




apache-felix apache-karaf (2)

वर्तमान में, तीन लोकप्रिय ओपन सोर्स ओएसजीआई कंटेनर हैं:

  - 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.

http://www.javaworld.com/article/2077837/java-se/java-se-hello-osgi-part-1-bundles-for-beginners.html

अपाचे परियोजना फेलिक्स नामक एक सामान्य उद्देश्य वाले ओएसजीआई कंटेनर को बनाए रखती है। यहां सेवामिक्स के रूप में उपयोग किया जाता है और

सर्विसमिक्स और कराफ के बीच मुख्य अंतर यह है कि सर्विसमैक्स अन्य एकीकरण घटकों का एक समूह है - एक्टिवएमक्यू संदेश ब्रोकर, ऊंट रूटिंग इंजन, और कुछ अन्य चीजें

के अनुसार: http://kevinboone.net/osgitest.html

अपाचे कराफ अपाचे फेलिक्स की एक उप परियोजना है। इसे "हल्के ओएसजीआई कंटेनर" के रूप में परिभाषित किया जाता है।

मुझे समझ में नहीं आता कि मुझे हेवीवेट का उपयोग कब करना चाहिए और हल्के वजन का उपयोग कब करना चाहिए। उनकी साइट इस बारे में बहुत कुछ नहीं समझाती है।


'लाइटवेट ओएसजीआई कंटेनर' लेबल फेलिक्स के साथ नहीं , अधिक फीचर समृद्ध ओएसजीआई कंटेनर के साथ कराफ को अलग कर रहा है।

यहां से गिलाउम नोडेट (करफ के लेखक) को उद्धृत करने के लिए:

फ़ेलिक्स सिर्फ ओएसजीआई कोर रनटाइम है। करफ अन्य सुविधाओं जैसे कंसोल, एक एसएसएच रीमोटिंग तंत्र, एक फाइल नियोक्ता और अन्य जोड़कर फ़ेलिक्स पर आधारित "वितरण" प्रदान करता है।

कराफ आर्किटेक्चर के इस आरेख में, फ़ेलिक्स (या अन्य ओएसजीआई कार्यान्वयन - वर्तमान में Equinox भी समर्थित है) ओएसजीआई बॉक्स है, अन्य बक्से करफ द्वारा जोड़े गए विशेषताएं हैं:

इसलिए, जब तक आपके पास करफ द्वारा मुलाकात नहीं की जाती है (अंतर्निहित कार्यान्वयन तक पहुंच की आवश्यकता होती है), आमतौर पर इसका उपयोग करने के लिए यह समझ में आता है क्योंकि यह 'बॉक्स से बाहर' प्रदान करता है।