بدون تدخل الخادم، يعتمد تشغيل نموذج Pub/Sub بشكل كامل على التفاعل المباشر بين الناشرين والمشتركين.
تعني هذه الهندسة المعمارية أن كل ناشر ومشترك سوف يتواصلان مع بعضهما البعض بشكل مباشر من نقطة إلى نقطة. في مثل هذا الإعداد، تصبح عملية تسليم الرسائل أكثر مرونة لأن كل عقدة يمكنها إدارة نشر واستقبال رسائلها ذاتيًا. بهذه الطريقة، لم يعد الضغط يتركز على خادم واحد، بل تشارك كل عقدة في الشبكة بأكملها في المهمة.
بالإضافة إلى ذلك، نظرًا لعدم وجود وسيط أو وسيط رسائل يتم التحكم فيه مركزيًا، فمن الطبيعي أن يتمتع هذا النظام بقدرة أفضل على التوسع. يتمكن كل ناشر من إرسال الرسائل بحرية إلى مشتركيه دون الحاجة إلى المرور عبر وسيط خادم مركزي. لا يؤدي هذا التصميم إلى تحسين مرونة النظام فحسب، بل يفتح أيضًا إمكانيات واسعة لإضافة ناشرين أو مشتركين جدد.
تتيح بنية Pub/Sub الخالية من الخوادم للأنظمة التواصل بشكل مباشر دون وسيط، مما يحسن الكفاءة الإجمالية بشكل كبير.
على الرغم من أنه يبدو مثاليًا من الناحية النظرية، فإن نظام Pub/Sub دون تدخل الخادم يواجه حتماً بعض التحديات. على سبيل المثال، كيف يمكننا ضمان تسليم الرسائل بشكل موثوق؟ نظرًا لأن الناشرين والمشتركين مستقلون عن بعضهم البعض، فمن غير الممكن ضمان معالجة الرسائل وتخزينها. بالإضافة إلى ذلك، إذا لم يكن المشترك متصلاً بالإنترنت، فهل يحتاج الناشر إلى إرسال نفس الرسالة عدة مرات لتعزيز الموثوقية؟
في هذه الحالة، قد تؤدي عمليات إعادة المحاولة المفرطة إلى ازدحام الشبكة، مما يؤثر بدوره على أداء النظام بشكل عام. ومن ثم، فإن كيفية ضمان الاتساق النهائي للرسائل دون التضحية بالأداء يصبح تحديًا كبيرًا في تصميم مثل هذه الأنظمة.
في حالة عدم وجود وسيط مركزي، فإن كيفية التعامل مع مشكلة تسليم الرسائل تصبح تحديًا رئيسيًا في تصميم نظام Pub/Sub بدون خادم.
بالإضافة إلى موثوقية الرسائل، فإن الأمان أيضًا هو موضوع لا يمكن تجاهله. كما نعلم جميعًا، في النظام اللامركزي، قد تتلقى أي عقدة رسائل من مصادر غير موثوقة. وهذا يعني أنه يجب دمج شكل من أشكال الأمان في النظام للتحقق من صحة المعلومات والتأكد من أن جميع الرسائل تأتي من ناشرين معروفين ولا تؤدي إلى نشر معلومات مضللة.
وعلاوة على ذلك، تخيل كيف يمكن لهذا البناء الخالي من الخوادم أن يقوم بموازنة التحميل بشكل فعال في التطبيقات الحقيقية. وبما أن جميع الناشرين والمشتركين يعملون بشكل مستقل، فيجب عليهم تعديل استراتيجياتهم الخاصة بتلقي الرسائل ونشرها بناءً على قدراتهم الخاصة. إن هذه القدرة على التكيف من شأنها أن تجعل النظام ككل أكثر مرونة. ولكن كيفية تصميم استراتيجية معقولة لتجنب الاختناقات في الأداء لا تزال تتطلب دراسة متعمقة.
قد تتمكن هياكل النشر والاشتراك المستقبلية من استخدام تقنيات مثل جداول التجزئة الموزعة (DHT) لتحسين كفاءة البحث عن المعلومات وتسليمها، بحيث يمكن للنظام أن يعمل بسلاسة وموثوقية حتى بدون وجود خادم مركزي. لذلك، عند تصميم نظام Pub/Sub اللامركزي، يجب علينا أن نأخذ بعين الاعتبار كل ناشر ومشترك بشكل كامل.أخيرًا، سواء من منظور تقني أو بعد نظري، فإن بنية Pub/Sub الخالية من الخوادم تمنحنا مساحة كبيرة للتفكير. ما نحتاج إلى التفكير فيه هو ما إذا كان مثل هذا الهيكل المعماري قادر حقًا على تلبية احتياجات النظام الحالي دون المرور عبر الخوادم التقليدية، وما هي الجوانب التي يجب الانتباه إليها عند استخدام هذا الهيكل المعماري لضمان الكفاءة والأمان بشكل عام؟