ما هي أفضل مكتبة ل Java To Grid / Cluster - تمكين طلبك؟ [مغلق

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

سؤال

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

لقد رأيت عرضا تقديميا ل جريدجين وكنت معجبا جدا به.

تعرف من أي الآخرين؟

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

المحلول

هناك العديد:

الآن أنا لم أستخدم كل هذه الأشياء ولكنني استخدمت أو حققت معظمهم.

تتركز Gridgain و Gigashaces أكثر الحوسبة الشبكية من التخزين المؤقت و (IMHO) الأنسب لحساب الشبكات من شبكات البيانات (انظر هذا التفسير لحساب شبكات البيانات مقابل). أجد جينجاساس لتكون تقنية مثيرة للاهتمام حقا ولديها العديد من خيارات الترخيص، بما في ذلك نسخة مجانية ونسخة كاملة مجانية للبدء.

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

لقد استخدمت قطرة القدم في المقام الأول كوسيلة لتقليل استخدام الذاكرة والتفتت في تطبيقات Java Web لأنها تحتوي على علامة JSP نيت إلى حد ما. إذا نظرت في أي وقت مضى إلى JSPs مجمعة، سترى أنهم يقومون بالكثير من تسلسلات السلسلة. تسمح لك هذه العلامة بتخزين مؤقت بفعالية نتائج شريحة من رمز JSP و HTML في سلسلة واحدة، والتي يمكن أن تحسن بشكل كبير للأداء في بعض الحالات.

EHCACHE هو حل التخزين المؤقت سهل الاستخدام أيضا في تطبيقات الويب. أبدا كخظة موزعة على الرغم من ذلك ولكن يمكن أن تفعل ذلك. أميل إلى عرضه كحل سريع وقذرة، لكن هذا ربما تحيزي.

memcached prevelent بشكل خاص في عالم PHP (واستخدامها من قبل مثل هذه المواقع في الفيسبوك). إنه حل خفيف وسهل حقا ولديه ميزة أنه لا يعمل في نفس العملية وستحصل بشكل أفضل على خيارات قابلية التشغيل البيني مع مداخن تقنية أخرى، إذا كان هذا مهم بالنسبة لك.

نصائح أخرى

قد ترغب في التحقق من Hazelcast أيضا. بزجاج هو عبارة عن معاملات مفتوحة المصدر، وتوزيعها / تقسيم تنفيذ قائمة الانتظار، والموضوع، والخريطة، ومجموعة، وقائمة، والقفل والخدمة المنفذة. إنه سهل العمل مع؛ أضف Hazelcast.jar إلى ClassPath وبدء الترميز. لا يلزم أي تكوين تقريبا.

إذا كنت مهتما بتنفيذ مهامك المراجعة، في الأزياء الموزعة، يرجى التحقق من وثائق خدمة المنفذ الموزعة في http://code.google.com/docreader/#p=hazelcast.

بزجاج يتم إصداره بموجب ترخيص Apache ودعم درجة المؤسسات متاح أيضا.

هل نظرت Infinispan.ب إنها منصة شبكة بيانات مفتوحة المصدر، من JBoss.org. لمزيد من التفاصيل، أوصي بقراءة هذا (قديم) مشاركة مدونة الإعلان عن المشروع، إلى جانب مشاركات بلوق أكثر إثارة للاهتمام من الملاحظات، بما في ذلك واحد على باستخدام Infinispan مع السبات وكما مخبأ مستقل. وبعد حتى في الآونة الأخيرة، على أحمر قبعة شبكة بيانات المؤسسة. وبعد هنالك دليل "بدء" سريع, و dzone reccard. أيضا، حتى فيديو يوتيوب :)

أعتقد أن ملخص @ كليتوس جيد جدا. أريد أن أذكر أن Terracotta يوفر أكثر بكثير من ذاكرة التخزين المؤقت الموزعة في شكل خريطة. تتجمع جافا كومة ومزامنة المزامنة، وتحويل برنامج Java المتزامن إلى برنامج Java الموزع. يمكنك إجراء التخزين المؤقت معها (بما في ذلك استخدام الإصدارات الموزعة من Libs Cache Open Source) أو مجموعة من الأشياء الأخرى.

بالنسبة لتوزيع العمل، هناك بعض Libs الإضافي المكتوبة فوق Terracotta، ولا سيما تيم الأنابيب (للرسائل) و Tim-Masterworker (لتوزيع أسلوب عامل الماجستير) هي تجريدات رائعة على رأس Terracotta. هذه المكتبة موجودة في Forge Terracotta:

قد تضيف هذه الصفحة التالية مؤخرا قليلا من المعلومات الإضافية مقارنة ببعض تقنيات البيانات المحتملة الأخرى:

JPPF. هو أيضا لطيفة.

إذا كنت ترغب في الذهاب إلى مستوى أقل قليلا، فهناك jgroups., ، والتي توفر لك أساسيات تجميع عمليات جافا للغاية.

كما تحقق استباقي

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

للحوسبة الشبكة، يمكنك أيضا النظر شبكة الثلج أو datasynapse gridserver.. وبعد توفر كل من كلاهما آليات فعالة للغاية لتوزيع المهام وتوفير الفشل والتكرار.

أعتقد أن سؤالك قد تم تفسيره بطرق مختلفة، تسأل عن مكتبة يمكنك استخدامها إلى "الكتلة تمكين" طلبك.

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

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

سيكون مكان البداية الجيد هو تنزيل Glassfish ومحاولة إعداد مثيل Glassfish متفاوت المسافات.

امل ان يساعد.

كارل

تحقق أيضا فورا

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

الاعتذار عن عدم وجود روابط - ولكن حتى ممثلي لا أستطيع نشر أكثر من واحد. يجب أن تكون المنتجات في مائل من السهل جوجل.

إذا كنت ترغب في تشغيل ملف قابل للتنفيذ في بحث حدودي - قل أنك تريد أن تدور نفس الملف القابل للتنفيذ مع مجموعة من الخيارات لكل مثيل - ثم نهج الدفعات التقليدية يعمل بشكل جيد. هذا هو نهج الحوسبة العالي الأداء التقليدي للغاية لا يزال في استخدام واسع النطاق - البنى التحتية المناسبة للتعامل مع هذا على نطاق المشاريع منصة LSF., datasynapse gridserver., PBS. أو كما ينضج خادم Windows HPC. وبعد قد ترغب أيضا في إلقاء نظرة على المنتجات المصدر المفتوحة مثل جلوبوس و مكوندو. وبعد اعتمادا على مدى حجم التطبيق الخاص بك هو، قد تنظر أيضا إلى ناخه, ، والتي يتم استخدامها للمشاريع العلمية على نطاق واسع جدا مثل LHC.

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

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