تحسين خوارزمية عضوية المجموعة في منصّة عمل مجموعة الغرض الموزّع ‘Jgroup’ - دندة, رضوان; قبلان, قاسم; اسماعيل, علي (Latakia University Journal -Engineering Sciences Series, 2018)
تدمج Jgroup نموذج مجموعة الغرضObject Group) ) مع نموذج الغرض الموزع من Java RMI, مزوّدة منصّة عمل (platform) ملائمة لتطوير تطبيقات موزعة موثوقة قابلة للتجزئة, فهي تعتمد تقنية واحدة (RMI) في جميع تفاعلاتها؛ سواء الداخلية لتحقيق التنسيق بين أغراض مجموعة المخدم أو الخارجية اللازمة لاتصال الزبون مع مجموعة الغرض. نظراً لديناميكة الشبكة؛ الناتجة عن انضمام مخدمات جديدة إلى مجموعة الغرض ومغادرة مخدمات أخرى أو الناتجة عن حدوث حالات تجزئة بسبب انقطاع في شبكة الاتصال بين المخدمات, فإن خدمة عضوية المجموعة القابلة للتجزئة فيJgroup تتبّع مسار هذه التغيّرات لتزوّد كل مخدّم بتقرير يسمى منظاراً (view) يحوي قائمة بالأعضاء الحاليين القابلة للاتصال والتنسيق فيما بينها. تتميز هذه الخدمة في Jgroup بأنها تحافظ على استمرارية توفّر الخدمة الموزّعة في جميع أجزاء الشبكة؛ بدلاً من محدوديتها في جزء واحد فقط. عندما يتم دمج الأجزاء بعد غياب التجزئة في شبكة الاتصال, تبني خدمة دمج الحالة من Jgroup حالة عامة متناسقة لتصلح أي انحراف ناتج عن تحديثات متناقضة في الأجزاء المختلفة. يجب على خدمة العضوية أن تضمن تحميل منظار فقط بعد التوصّل إلى توافق على تركيبه بين جميع المخدمات الموجودة ضمن المنظار(خاصية التوافق على المنظار). لهذه الغاية؛ يتم تبادل رسائل تخمين عن المنظار المتوقع بين جميع المخدمات؛ مما يسبّب حمولة زائدة (overhead) عبر الشبكة. تحسّن هذه المقالة أداء خوارزمية العضوية المسؤولة عن تحقيق خاصية التوافق على المنظار, من خلال السماح لأول مخدم فقط يكتشف حالة التغيّر في العضوية بإرسال تخمينه, بدلاً من قيام جميع المخدمات بذلك. تبيّن نتائج تقييم الأداء أن الخوارزمية المحسنة تخفّض عدد التخمينات المرسلة, وتزداد نسبة التخفيض مع تزايد عدد المخدمات المتواجدة ضمن المنظار, وتستغرق الخوارزمية المحسنة بشكل تقريبي الفترة الزمنية نفسها التي تتطلّبها الخوارزمية السابقة للوصول إلى التوافق. Jgroup integrates the object group paradigm with the distributed object model of Java RMI, providing a platform which is suitable for developing partitionable distributed applications. Jgroup depends on RMI in all its interactions; whether internal for coordination between object group replicas, or external for communicating clients with object group. Because of the dynamic of network which is caused by joining new servers and leaving another ones to object group, or caused by partitioning, Partitionable Group Membership Service tracks this changes to provide each member with a report called view. The view contains a list of members which can communicate and coordinate activities. The advantage of group membership in Jgroup is the ability to continue in providing service in each partition, instead of limiting it in one partition. When partitions merge, State Merging Service of Jgroup constructs a new global consistent state, to reconcile any divergence caused by conflict updates in the different partitions. Group Membership Service is required that a view is installed only after agreement is reached on its composition among the servers included in the view (Agreement On View property). To achieve this property; many of Estimation messages are exchanged between the servers, which causes overhead on the network. This article improves the performance of group membership algorithm which is responsible for achieving the agreement, through allowing for the first server detects the new change in membership to send its estimation to other servers, instead of doing that by each server. Results show that the enhanced algorithm reduces the number of exchanged estimate messages, and takes approximately the same period of time to reach to agreement on view as in the default algorithm.