هل يمكنك، في الوقت الحالي، استخدام JBoss أو Glassfish (أو غيره) كخادم Java EE لمشروع جديد؟[مغلق]

StackOverflow https://stackoverflow.com/questions/277543

  •  07-07-2019
  •  | 
  •  

سؤال

إذا بدأت مشروع Java EE جديدًا اليوم ومن المقرر الانتهاء منه خلال عام تقريبًا، فما هو خادم التطبيقات الذي ستختاره ولماذا؟

يجب أن يتضمن جزء من إجابتك حججك لقرارك.وأيضًا مدى خبرتك مع خادم Java EE الذي تختاره ومع الخوادم الأخرى المتوفرة في السوق.هذه مثيرة للاهتمام لأننا جميعًا نتعرف على التحقيق والفكر الذي تم وضعه في إجابتك.

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

المحلول

ولقد استخدمت WebLogic و بنك الإسكان للتجارة، جبوس، GlassFish، الراتنج، جيتي، القط، وعدد قليل من الآخرين على مر السنين 10+ الماضية. لذلك، لو كنت تفكر في مشروع جديد، وأود أن أسأل نفسي بعض الأسئلة أولا. الشيء الوحيد الذي لم أكن السؤال بعد الآن هو أنني سترفض شقة لاستخدام وحدات JSP إلا إذا تعرض للتعذيب حتى أنا بكيت لبلدي الأم.

هل يجب أن يكون متوافقا / نشر على منتج معين بسبب ولاية لشخص ما؟ لا توجد وسيلة لتجاهلها أو اقناعهم بغير ذلك؟ إذا كان الأمر كذلك، هناك جوابك.

هل لديك لاستخدام لل EJBs؟ هل حقا؟ تفاديها إذا كان ذلك ممكنا - هي في الواقع حاجة إليها فقط لأنظمة كبيرة جدا، على مستوى المؤسسات. نتذكر أنهم مجرد أدوات، والكبيرة في ذلك (ويمكن لأي شخص أن يقول "جولدن بمطرقة ثقيلة"؟). هم يبالغ بشكل كبير، لذلك حقا، حقا السؤال ما إذا كنت في حاجة إليها. إذا كنت في حاجة لهم، فإن ذلك يزيل العديد من الخيارات الخاصة بك بما في ذلك المفضلة، جيتي.

هل لديك لاستخدام أي من تقنيات J2EE الرئيسية الأخرى مثل الدائرة، ESB، وما إلى ذلك؟ إذا كان الأمر كذلك، وكنت حقا لا يمكن الاستغناء عنها، ثم كنت مقيدة مرة أخرى إلى حاوية J2EE كاملة. بعناية التفكير والتحقيق قبل أن تلتزم BPM، على سبيل المثال، وتجنب AquaLogic BPM في (تقريبا) كل التكاليف - هو قبيح في أقصى

.

إذا كنت حقا يجب استخدام الحاويات J2EE كاملة، والنظر مفتوحة المصدر الأول لأنها أكثر قوة، أيد نحو أفضل، وأكثر فعالية من حيث التكلفة. لديهم قواعد العملاء أكبر وأكثر انفتاحا التفاعل الدعم، لذلك فإنهم يميلون إلى الحصول على إصلاحات أفضل وأسرع. ومع ذلك، الراتنج غير ناضج وأود أن تجنب ذلك نسبة إلى GlassFish أو جبوس - لقد وجدت أنها إشكالية لنشر والدعم. وأود أن تفضل جبوس بسبب قاعدته أوسع العملاء، والنضج، الخ GlassFish من الصعب أن تدرج في عملية بناء / نشر الآلي، ولكن قد يكون أجمل لبعض معالمه محددة (إذا كنت في حاجة إليها).

هل لدي سبب خاص في حاجة إلى اباتشي؟ ثم تميل القط، وهو أمر ربما الإيجابي.

هل يمكنني جعل القيام مع السيرفلتس فقط؟ ثم أود أن استخدام جيتي - هو الأخف وزنا وأسرع وأسهل حل، الأكثر مرونة. إذا أنا يتكئ أن تكون قادرة على استخدام جيتي، السؤال الذي يطرح نفسه كل ما عندي من الافتراضات لماذا. ينطبق YAGNI.

وأفضل لاستخدام StringTemplate / WebStringTemplate على جيتي: (أ)، قوي، سريع، حل للصيانة نظيفة مع أي رسوم الترخيص وسمعة راسخة والدعم، وما إلى ذلك من حيث أبدأ في الوقت الحاضر

ومعظم التطبيقات / نظم اختيار الكثير من الميزات J2EE يتوهم عند كل ما يحتاجونه فعلا هو السيرفلتس وJDBC مع بعض الهندسة المعمارية لائق / التصميم. السؤال لماذا كنت تعتقد أنك بحاجة إلى المزيد.

ومن الحاويات كاملة، وأود أن تجنب يبلوغيتش وبنك الإسكان للتجارة إلا إذا كنت دعم موقع على شبكة الانترنت العامة الكبرى (ونشر موقع بلدي صاحب العمل الحالي على يبلوغيتش وأنها تحصل على أحد عشر + مليون زيارة شهريا بينما لم يكن البعض مقارنة). المطالبة إلى الشهرة يبلوغيتش الحقيقية هي تجمع من السهل نسبيا، ولكن تجنب بهم الملكية بائع قفل في الميزات في (تقريبا) كل التكاليف. بنك الإسكان للتجارة هو مجرد كابوس الذي أود أن تجنب حرفيا في جميع التكاليف - أنا أرفض أن تفعل المشاريع التي تشمل بنك الإسكان للتجارة بعد أن فعلت زوجين في الماضي. لا المنتج يستحق رسوم الترخيص واسعة النطاق، إلا إذا كان لديك حقا حاجة خاصة أن يدفع استخدام ميزة الملكية. منذ عشر سنوات كمهندس معماري كبير / مهندس لكثير من شركات فورتشن 500، وأنا لم أر هذه الحاجة. من ناحية أخرى، لقد رأيت الكثير من الألم بسبب اختيار هذه المنتجات الملكية.

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

تحرير: قطعة أخرى للنظر ...

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

نصائح أخرى

ومصطلح "خادم التطبيق" غامض. مع GlassFish V3، يمكنك أن تبدأ صغيرة، ويقول، حاوية الويب التقليدية وتتطور (باستخدام أو إس جي أي وبسيطة "إضافة حاوية" وظيفة) لإضافة أي شيء تريد: نقابة الصحفيين، JAX-RS، في EJB، JTA، الدائرة، ESB ، الخ ... ومع انها نفس المنتج، نفس واجهة الادارية، الخ هل هذا صفها بأنها خادم التطبيق بالنسبة لك؟ -Alexis (الأحد)

والسؤال الأول وعادة ما أسأل نفسي "هل يمكن أن تفعل ذلك مع القط؟". إذا كان الجواب لا لأنني في حاجة الدائرة أو JTA ثم ألجأ إلى ملقم التطبيق.

واعتدت يبلوغيتش 8 منذ حوالي 3 سنوات سعيدة مع سهولة يبلوغيتش في الاستخدام ونموذج الترخيص / التكلفة. نحن استخدامه لمشروعين كان واحدا خدمة الويب والآخر كان المدخل. نحن لم تواجه أي مشاكل مع يبلوغيتش أو يبلوغيتش البوابة في أي من تلك المشاريع.

لالعامين الماضيين كنت أعمل مع بنك الإسكان للتجارة. أي وقت أنا التفاوض مع IBM وانتهت دائما المطاف تكلف ضعفي ما يعادل يبلوغيتش لكن أملى سياسة الشركة كان بنك الإسكان للتجارة لاستخدامها. لقد وجدت منحنى التعلم في بنك الإسكان للتجارة أن تكون أكثر حدة بكثير من يبلوغيتش وبناء لدينا / نشر و/ اختبار دورة الحياة لذلك مضيعة للوقت أن كنا قط في بيئة التطوير. ولكن أكبر مشكلة كان لي مع بنك الإسكان للتجارة وكان عندما واجهنا الخلل الذي أجبرنا على الترقية إلى إطلاق سراح التصحيح القادم فقط لتصل الى web.xml جديد مشكلة في تحليل. استغرق الأمر تحولا 48hr للعمل من خلال كل ذلك.

في هذه اللحظة على الرغم من أنني أستخدمه جبوس. منذ حوالي 3 أشهر وكنت على وشك الشروع في مشروعي الجديد مع القط وJetspeed 2، لكنني لاحظت أن Jetspeed 2 يبدو راكدا بعض الشيء في الوقت الراهن وجبوس البوابة 2.7.0 صدر للتو مع JSR 286 / المدخل 2.0 الدعم. أعطى جبوس تدور وجدت أنه من السهل جدا لانشاء وإدارة. بناء / نشر دورة / اختبار سريع للغاية وأنا نادرا ما تضطر إلى إعادة تشغيل الخادم إلا إذا كنت قد غيرت ملف XML الربيع في مكان ما.

لقد كنت أستخدم jBoss لمدة 3-4 سنوات.

الحجج ل jBoss:

  1. مفتوح المصدر.
  2. الدعم التجاري متاح.
  3. مجتمع مستخدمين كبير ونشط.

الحجج ضد جي بوس:

  1. لا يوجد وصول عام، إصدار حاوية Java EE 5 مدعوم.
  2. الكثير من الوثائق ولكن مطولة؛قد يكون من الصعب العثور على إجابات لسؤال "كيف أفعل x؟"
  3. الأدوات الإدارية لـ 4.x ضعيفة مقارنة بالعروض التجارية الأخرى.

والخروج GlassFish 3.1! بنيت على رأس وحدات، جافا EE 6 استنادا نواة V3 GlassFish، الإصدار 3.1 يسلم المجموعات، إدارة مركزية وتوافر عالية.

http://blogs.oracle.com/nazrul/entry/glassfish_3_1 لمزيد من التفاصيل.

نقطة أخرى لم تتم مناقشتها هنا هي الأداء.إذا كان هذا الأمر مقلقًا بسبب نوع الخدمة أو بسبب عدد المستخدمين، فسيتم تطبيق ما يلي:

  • يبدو أن Tomcat أبطأ من Glassfish
  • يبدو أن السمكة الزجاجية أبطأ من الراتنج
  • الراتنج أبطأ بكثير من G-WAN + Java

لاحظ أن G-WAN تعتمد على JVM وحده:ولا تستخدم أي حاويات أخرى (ما لم يتم تحديدها صراحةً) لذا يمكنك حجزها للأجزاء المهمة للأداء في تطبيقات الويب الخاصة بك.

نظرًا لأن G-WAN تدعم اللغات الأخرى (C وC++ وC# وD وObjective-C)، فيمكنك أيضًا معالجة بعض أجزاء التطبيقات بلغة C الخام مع الاحتفاظ بـ Java لمهام أخرى.

وأنا قد تشمل OS المفضل لديك كمعيار القرار. وينبغي أن يجعل من الاسهل لدعم إذا كنت تستخدم نفس البائع لنظام التشغيل والتطبيقات الخادم. إذا كان لديك بالفعل وجود علاقة مع واحد أو كلا البائعين النظر إذا كانت جيدة للتعامل معها.

ومن منظور تقني سأختار GlassFish لأنه يحظى بدعم لمزيد من الابتكارات الحديثة. لا أعتقد جبوس سيئة في أي حال هو ببساطة ليس ما يصل إلى التاريخ.

ومعظم تجربتي على يبلوغيتش ولكن لقد استخدمت جبوس وGlassFish. أنا فقط أفرج موقع جديد على كامل الشمس كومة المصدر المفتوح (أوبن سولاريس، GlassFish، والخلية)، وكانت تجربة رائعة مع الإحباط طفيفة فقط.

وأنا ما زلت أعتقد أن يبلوغيتش هو أفضل خادم التطبيق جافا EE في السوق. وأعتقد أنه يستحق ذلك إذا كنت تستطيع أن رسوم الترخيص.

ولقد فوجئت لنرى إلى أي مدى يمكن أن تذهب من خلال الجمع بين القط، OpenEJB، وActiveMQ. ومن شأن ذلك أن يبدو لي أن يكون بديلا منخفض التكلفة.

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

وبديل: استخدام أي appserver على الإطلاق

<لأ href = "http://www.atomikos.com/ المنشورات / J2eeWithoutApplicationServer "يختلط =" نوفولو noreferrer "> http://www.atomikos.com/Publications/J2eeWithoutApplicationServer .

لمشاريع على شبكة الإنترنت، والحفاظ على وعاء على شبكة الإنترنت الخفيفة إذا كان لديك، جنبا إلى جنب مع شيء من هذا القبيل النصيبة لتجنب تعقيد JSP / JSF أو الدعامات.

وHTH الرجل

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