سؤال

ما هي مزايا استخدام Apache CXF أكثر أباتشي المحور والعكس بالعكس ؟

هل كانت مفيدة؟

المحلول

نضع في اعتبارنا, أنا منحازة تماما (PMC رئيس CXF) ، ولكن أفكاري:

من بدقة "أن المشروع أفعل ما أريد القيام به" المنظور ، سواء حد ما يعادلها.هناك بعض "حالة الحافة" الأشياء التي CXF يمكن أن تفعل هذا المحور 2 لا والعكس بالعكس.ولكن 90% من حالات الاستخدام ، إما سوف تعمل بشكل جيد.

وهكذا ، فإنه يأتي إلى مجموعة من أشياء أخرى غير "خانة الاختيار ميزات".

  • API - CXF يدفع "المعايير على أساس" API (JAX-WS متوافقة) في حين Axis2 العام يذهب نحو الملكية الأشياء.إلى أن قال: حتى CXF قد تتطلب استخدامات الملكية المعهد إلى تكوين/السيطرة على مختلف الأشياء خارج جاكس-WS المواصفات.للراحة ، CXF أيضا يستخدم معيار API (JAX-RS متوافقة) بدلا من الملكية الأشياء.(نعم أنا على علم جاكس-WS وقت التشغيل في Axis2 ، ولكن الأدوات و مستندات و كل شيء لا هدف منه)

  • المجتمع الجوانب المحسنة - CXF تفخر على الاستجابة إلى القضايا صنع "fixpacks" متاحة للمستخدمين.CXF 12 fixpacks عن 2.0.x (صدر قبل عامين عن كل 2 أشهر) ، 6 fixpacks إلى 2.1.x و الآن 3 2.2.x.Axis2 لا حقا "" دعم الإصدارات القديمة.إلا في حالة "حرجة" قضية ضرب ، قد تحتاج إلى الانتظار حتى بعد الإفراج كبير (أنهم المتوسط عن كل 9-10 أشهر أو نحو ذلك) من أجل الحصول على إصلاحات.(على الرغم من ، أيضا يمكنك انتزاع شفرة المصدر و التصحيح/إصلاح نفسك.يجب أن نحب مفتوحة المصدر.)

  • التكامل - CXF أفضل بكثير الربيع التكامل إذا كنت تستخدم الربيع.كل التكوين و هذا يتم من خلال الربيع.أيضا, الناس يميلون إلى النظر في CXF أكثر "المضمن" (أنا لم انظر Axis2 من هذا المنظور) في تطبيقات أخرى.لست متأكدا إذا كان مثل الأشياء التي تهمك.

  • الأداء - كلاهما أداء جيدا للغاية.أعتقد Axis2 الملكية ADB ربط البيانات هو أسرع قليلا من CXF, ولكن إذا كنت تستخدم JAXB (المعايير على أساس API مرة أخرى) ، CXF هو أسرع قليلا.عند استخدام سيناريوهات أكثر تعقيدا مثل WS-الأمن, الأمنية الأساسية "المحرك" (WSS4J) هي نفسها من أجل كل ذلك الأداء تماما للمقارنة.

لست متأكدا إذا كان هذا يجيب على السؤال في كل شيء.نأمل أن توفر على الأقل بعض المعلومات.

:-)

دان

نصائح أخرى

  • AXIS2.: أكثر في كل مكان في السوق، يدعم المزيد من الارتباطات، يدعم لغات أخرى مثل C / C ++.
  • cxf.: أسهل بكثير استخدام، أكثر ودية الربيع، أسرع حصلت على دعم لبعض الملحقات WS- *.

شيء آخر هو نشاط المجتمع. قارن حركة المرور قائمة البريدية للمحور و cxf (2013).

لذلك إذا كان هذا هو أي مؤشر للاستخدام، فسيكون المحور أقل بكثير من CXF.

قارن إحصائيات CXF ومحور المحور في Ohloh. وبعد يحتوي CXF على نشاط مرتفع للغاية بينما يحتوي المحور على نشاط منخفض.

هذا هو الرسم البياني لعدد الالتزام بمرور الوقت ل CXF (أحمر) ومحور AXIS1 (الأخضر) (الأزرق).enter image description here

مزايا CXF:

  1. يدعم CXF لمعالجة WS وسياسة WS و WS-RM و WS-Security و WS-I BasicProfile.
  2. تنفذ CXF API JAX-WS (وفقا ل JAX-WS 2.0 TCK).
  3. CXF لديه دمج أفضل مع الربيع والأطر الأخرى.
  4. تتمتع CXF بتمويل عالي من حيث استراتيجية اعتراضية.
  5. يحتوي CXF على ميزة أكثر قابلية للتكوين عبر API بدلا من ملفات XML مرهقة.
  6. CXF لديه ارتباطات: الصابون، والباقي / HTTP، ودعم ربط البيانات الخاصة به Jaxb 2.0، Aegis، بشكل افتراضي، استخدمه Jaxb 2.0 والمزيد من المواصفات القياسية Java Close.
  7. يحتوي CXF على مجموعة أدوات وفيرة، مثل جافا إلى WSDL، WSDL إلى Java، XSD إلى WSDL، WSDL إلى XML، WSDL إلى SOAP، WSDL للخدمة.

مزايا AXIS2:

  1. يدعم AXIS2 أيضا WS-RM و WS-Security و WS-I BasicProfile باستثناء سياسة WS، وأتوقع أن يتم دعمها في إصدار قادم.
  2. المحور لديه خيارات مزيد من خيارات البيانات للاختيار الخاص بك
  3. يدعم AXIS2 لغات متعددة - بما في ذلك إصدار C / C ++ وإصدار Java.
  4. يدعم AXIS2 مجموعة واسعة من ربط البيانات، بما في ذلك XMLBeans، Jibx، Jaxme و Jaxbri وكذلك ملزمة البيانات الأصلية الخاصة بها، ADB. تاريخ أطول من CXF.

باختصار: من فوق عناصر الاستفادة، فإنه يقودنا إلى أفكار جيدة لمقارنة AXIS2 و CXF على مزاياها الخاصة. لديهم جميعهم مناطق مختلفة متطورة بشكل جيد في مجال معين، CXF قابلة للتكوين للغاية، ولا تكامل ولديها أطقم أدوات غنية مدعومة وإغلاق مجتمع Java، اتخذت AXIS2 نهجا يجعله من نواح كثيرة يشبه خادم تطبيقات في مصغرة. هو عبر لغات البرمجة المتعددة. نظرا لأن استقلالها، فإن AXIS2 يضفي نفسه نحو خدمات الويب التي تقف وحدها، مستقلة عن التطبيقات الأخرى، وتوفر مجموعة واسعة من الوظائف.

كمطور، نحتاج إلى منح وجهة نظرنا لاختيار واحد صحيح، أيهما الإطار الذي تختاره، سيكون لديك فائدة من مجتمع المصدر المفتوح النشط والمستقر. من حيث الأداء، قمت باختبار بناء على نفس الوظيفة ويتم تكوينها في حاوية الويب نفسها، وتبين النتيجة أن CXF أداء أفضل قليلا من AXIS2، قد لا تعكس الحالة الفردية قدراتها وأدائها.

في بعض المقالات البحثية، فإنه يكشف أن قاعدة بيانات AXIS2 الخاصة بنقاعة بنك التنمية الآسيوي أسرع بكثير من CXF لأنه لا تملك ميزة إضافية (أمان WS). APACHE AXIS2 هو الإطار الأكثر استخداما نسبيا، لكن Apache CXF يسجل عبر إطار خدمات الويب الأخرى تفكر نسبيا سهولة التطوير، واتجاه الصناعة الحالي، والأداء، وأداء الأداء العام وغيرها من الميزات (ما لم يكن هناك حاجة إلى دعم تكريم خدمات الويب بشكل صريح، وهو غير مطلوب هنا في

وفقا لتجربتي CXF جيدة من حيث تكوينها في بيئة الربيع. أيضا الفصول التي تم إنشاؤها سهلة الفهم. وكما هو أكثر نشاطا، نحصل على دعم أفضل بالمقارنة مع المحور أو AXIS2.

ميزة أخرى من CXF: إنها تتصل بخوادم الويب باستخدام مصادقة NTLMV2 خارج المربع. (المستخدمة من قبل Windows 2008 وما فوق) قبل استخدام CXF، اخترقت AXIS2 لاستخدام HTTPClient V4 + JCIFS لجعل هذا ممكنا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top