يتطلّب الاعتماد المتزايد على الأنظمة الشبكية في النشاطات اليومية تزويدها لخدمات متوفّرة و موثوقة. تزوّد Jgroup خدمة متوفّرة من خلال إنشائها نسخ (Replicas) متعددة من الخدمة نفسها و توزيعها على أجهزة متعددة, بينما تحقّق الموثوقية من خلال سماحها لنسخ الخدمة بالحفاظ على الحالة المشتركة فيما بينها و تنسيق نشاطاتها باستخدام تقنية استدعاء الطريقة البعيدة (Remote Method Invocation). خلافاً لـJgroup, تستخدم JavaGroups تقنية تمرير الرسائل (Message Passing) لتحقيق التنسيق بين النسخ.
تقارن هذه المقالة بين أداءي استدعاء طريقة المجموعة في Jgroup بنوعيه الوحيد (anycast) و المتعدّد (multicast) و استدعاء الطريقة في JavaGroups بنوعيه طريقة الحصول على أول إجابة (GET_FIRST) و طريقة الحصول على جميع الإجابات (GET_ALL). تحسّن هذه المقالة أيضاً من أداء منصّة العمل ARM (Autonomous Replication Management) المدمجة مع (Jgroup (Jgroup/ARM لزيادة دعمها مع التسامح مع الخطأ؛ من خلال إيجاد حل أفضل لمعالجة مشكلة تعطّل كامل أعضاء نسخ الخدمة في تعاقب سريع.
تتميز الآلية الجديدة بقيام نسخة واحدة فقط (النسخة القائدة) بإرسال حدث التجديد بدلاً من قيام كل نسخ الخدمة بإرسال هذا الحدث؛ مع محافظتها على الزمن اللازم لاكتشاف حالة التعطّل من قبل مدير النسخ (Replication Manager).
تُظهر نتائج المقارنة بين Jgroup و JavaGroups تفوّق الثانية عند وجود نسخة خدمة واحدة, بينما يتفوّق أداء الاستدعاء في Jgroup على JavaGroups مع تزايد عدد نسخ الخدمة. تظهر النتائج أيضاً تزايد ملحوظ في زمن الاستدعاء في JavaGroups مع تزايد حجم المصفوفة الممررة إلى الطريقة المستدعاة. الأمر الذي يجعل JavaGroups غير مناسبة للتطبيقات التي تتطلب نقلاً لحجوم كبيرة من البيانات و عدداً كبيراً من المخدمات, بينما تعتبر Jgroup مناسبة لذلك.
تبين نتائج تقييم أداء الحل المقترح بأنّه يخفّض عدد أحداث التجديد المرسلة مقارنةً مع حل ميلينغ تصل في حدّها الأعظمي إلى 37.5%, و تستغرق Jgroup/ARM الفترة الزمنية نفسها التي يتطلّبها الحل السابق لاكتشاف تعطّل المجموعة بكاملها.
The increasing reliance on network systems in day-to-day activities requires that they
provide available and reliable services. Jgroup provides available service through creating
multiple replicas of the same service on multiple devices. Jgroup achieves reliable service
by maintaining the shared state between the replicas and coordinating their activities
through Remote Method Invocation. Unlike Jgroup, JavaGroups uses message passing to
implement coordination between the replicas.
In this paper, we compare Jgroup and JavaGroups for different Group Method
Invocation modes. These modes are Anycast and Multicast in Jgroup, GET_FIRST and
GET_ALL in JavaGroups.
This paper also improves the performance of ARM (Autonomous Replication
Management) which is embedded with Jgroup (Jgroup/ARM) for supporting fault
tolerance, through finding a new solution to handle group failure where all remaining
replicas fail in rapid succession. In this new solution, only one replica (the group leader)
issues renew events (IamAlive) periodically, instead of sending it by every replica in the
group, with taking the same period to discover group failure by Replication Manager.
Results of Comparison show that JavaGroups is faster than Jgroup when a single
replica is used, whereas Jgroup outperforms JavaGroups with increasing number of
replicas. The invocation delay in JavaGroups increases noticeably with increasing the size
of array passed into the invoked method which make JavaGroups unsuitable for
applications which require exchanging big sizes of data and use large number of servers,
whereas Jgroup is suitable for that.
Results show that the new proposal reduces the number of renew events to 37.5% at
most, and Jgroup/ARM takes approximately the same period of time to discover group
failure as in Meling solution.
المراجع المستخدمة
Bernstein, P. 'Middleware: A Model for Distributed System Services' Communications of the ACM, 39:2, 86−98. February 1996
Deitel, H.M., Deitel, P.J. and Santy, S.E. Advanced Java 2 Platform: How To PROGRAM. New Tersey: Prentice-Hall, Inc, 2002.pp. 854-905
Deitel, H.M., Deitel, P.J. and Santy, S.E. Advanced Java 2 Platform: How To PROGRAM, New Tersey: Prentice-Hall, Inc, 2002. pp. 1260-1317
تدمج Jgroup نموذج مجموعة الغرضObject Group مع نموذج الغرض الموزع من Java RMI, مزوّدة منصّة عمل (platform) ملائمة لتطوير تطبيقات موزعة موثوقة قابلة للتجزئة, فهي تعتمد تقنية واحدة (RMI) في جميع تفاعلاتها؛ سواء الداخلية لتحقيق التنسيق بين أغراض مجموعة ا
يعرض هذا البحث طريقة دمج قاعدة بيانات مع Jgroup بالاعتماد على Hibernate
التي تمثّل إحدى أدوات مقابلة الغرض العلائقية. كما يقارن بين أداء Jgroup المدمجة
مع Hibernate و أداء RMI المدمجة مع Hibernate تظهر النتائج تفوق أداء
Jgroup/Hibernate على أداء RMI/Hibernate مع تزايد عدد الزبائن.
تعتمد معظم صناعات الروبوت في نقل الحركة فيها على استخدام محركات السيرفو و المحركات الخطية أو محركات التيار المستمر بالإضافة إلى دارات القيادة الخاصة بها مما يزيد الكلفة و يعقد عملية التحكم بالروبوت, تبحث المقالة في استخدام تقانات الهواء المضغوط في بن
تم الاهتمام بالجسيمات النانوية البوليمرية في السنوات الأخيرة كأنظمة دوائية واعدة للتوصيل عبر المخاطيات الحيوية والاستهداف الدماغي متضمنة جسيمات الكيتوزان لما تتمتع به من مزايا وأهمها الخواص اللصوقة حيوياً. تركّز الهدف من الدراسة المقدمة على تحضير جسي
يعرض هذا البحث دراسة مرجعية عن تقنية النانو تكنولوجي((NanoTechnology. يوضّح فيها أشكال المواد النانوية, و طرق تصنيعها, و خصائصها, و تطبيقاتها, و دور تقنيات النانو في الإلكترونيات و الضوئيات, كما إنه يشرح إمكانية تصنيع حاسوب من أنابيب الكربون النانوية