النسخ المتماثل الجغرافي في Azure SignalR

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

فوائد استخدام النسخ المتماثل الجغرافي

  • أكثر مرونة في مواجهة الانقطاع الإقليمي: إذا حدث انقطاع إقليمي، فسيتم حل Azure SignalR DNS إلى نسخ متماثلة سليمة في مناطق أخرى.
  • الاتصال عبر المناطق. يمكن أن تتواصل النسخ المتماثلة المختلفة مع بعضها البعض كما لو أنها نفس المثيل.
  • سرعة الشبكة المحسنة: سيتصل العملاء الموزعون جغرافيا بأقرب نسخة متماثلة. تتصل هذه النسخ المتماثلة من خلال شبكة Azure العالمية الأساسية، ما يضمن الشبكات السريعة والمستقرة.
  • التكوينات المشتركة. تحتفظ جميع النسخ المتماثلة بالتكوين الأساسي لمورد Azure SignalR Service.

المتطلبات الأساسية

مثال على حالة الاستخدام

Contoso هي شركة وسائل التواصل الاجتماعي مع قاعدة عملاءها المنتشرة في جميع أنحاء الولايات المتحدة وكندا. لخدمة هؤلاء العملاء والسماح لهم بالتواصل مع بعضهم البعض، تدير شركة Contoso خدماتها في وسط الولايات المتحدة. يتم استخدام خدمة Azure SignalR لمعالجة اتصالات المستخدم وتسهيل الاتصال بين المستخدمين. معظم مستخدمي Contoso النهائيين هم مستخدمو الهاتف. نظرا للمسافات الجغرافية الطويلة، قد يواجه المستخدمون النهائيون في كندا زمن انتقال عال وجودة شبكة رديئة.

رسم تخطيطي لاستخدام مثيل Azure SignalR واحد للتعامل مع نسبة استخدام الشبكة من بلدين.

قبل ظهور ميزة النسخ المتماثل الجغرافي، كان بإمكان شركة Contoso إعداد خدمة Azure SignalR أخرى في Canada Central لخدمة مستخدميها الكنديين. من خلال إعداد خدمة Azure SignalR أقرب جغرافيا، يتمتع المستخدمون النهائيون الآن بجودة شبكة أفضل وزمن انتقال أقل.

ومع ذلك، فإن إدارة خدمات Azure SignalR المتعددة تجلب بعض التحديات:

  1. وستكون هناك حاجة إلى آلية اتصال عبر المناطق لتمكين المحادثة بين كندا والمستخدمين الأمريكيين.
  2. سيحتاج فريق التطوير إلى إدارة خدمتين منفصلتين من خدمات Azure SignalR، ولكل منهما مجال مميز سلسلة الاتصال.
  3. إذا حدث انقطاع إقليمي، يجب تبديل حركة المرور إلى منطقة أخرى.

رسم تخطيطي لاستخدام مثيلين من Azure SignalR لمعالجة نسبة استخدام الشبكة من بلدين.

تسخير النسخ المتماثل الجغرافي

مع ميزة النسخ المتماثل الجغرافي الجديدة، يمكن ل Contoso الآن إنشاء نسخة متماثلة في Canada Central، والتغلب بشكل فعال على العقبات المذكورة أعلاه.

رسم تخطيطي لاستخدام مثيل Azure SignalR واحد مع نسخة متماثلة لمعالجة نسبة استخدام الشبكة من بلدين.

إنشاء نسخة متماثلة ل SignalR

لإنشاء نسخة متماثلة، انتقل إلى جزء SignalR Replicas على مدخل Microsoft Azure وانقر فوق Add لإنشاء نسخة متماثلة. سيتم تمكينه تلقائيا عند الإنشاء.

لقطة شاشة لإنشاء نسخة متماثلة ل Azure SignalR على المدخل.

بعد الإنشاء، ستتمكن من عرض/تحرير النسخة المتماثلة على المدخل بالنقر فوق اسم النسخة المتماثلة.

لقطة شاشة لجزء النظرة العامة لمورد النسخة المتماثلة ل Azure SignalR.

وحدة التسعير والموارد

كل نسخة متماثلة لها خاصتها unit و.autoscale settings

النسخة المتماثلة هي ميزة الطبقة المتميزة من خدمة Azure SignalR. تتم فوترة كل نسخة متماثلة بشكل منفصل وفقا لوحدتها الخاصة وحركة المرور الصادرة. يتم أيضا حساب الحصة النسبية المجانية للرسالة بشكل منفصل.

في المثال السابق، أضافت Contoso نسخة متماثلة واحدة في Canada Central. ستدفع شركة Contoso مقابل النسخة المتماثلة في Canada Central وفقا لوحدتها ورسالتها في Premium Price.

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

حذف نسخة متماثلة

بعد إنشاء نسخة متماثلة لخدمة Azure SignalR، يمكنك حذفها في أي وقت إذا لم تعد هناك حاجة إليها.

لحذف نسخة متماثلة في مدخل Azure:

  1. انتقل إلى خدمة Azure SignalR، وحدد شفرة النسخ المتماثلة . انقر فوق النسخة المتماثلة التي تريد حذفها.
  2. انقر فوق الزر حذف في جزء نظرة عامة على النسخة المتماثلة.

فهم كيفية عمل النسخة المتماثلة SignalR

يوفر الرسم التخطيطي أدناه توضيحا موجزا لوظيفة SignalR Replicas:

رسم تخطيطي لقوس النسخة المتماثلة Azure SignalR.

  1. يتفاوض العميل مع خادم التطبيق ويتلقى إعادة توجيه إلى خدمة Azure SignalR. ثم يحل اسم المجال المؤهل بالكامل (FQDN) لخدمة SignalR — contoso.service.signalr.net. يشير FQDN هذا إلى Traffic Manager، الذي يقوم بإرجاع الاسم المتعارف عليه (CNAME) لأقرب مثيل SignalR إقليمي.
  2. مع CNAME هذا، ينشئ العميل اتصالا بالمثيل الإقليمي (النسخة المتماثلة).
  3. ستقوم النسختان المتماثلتان بمزامنة البيانات مع بعضهما البعض. سيتم نقل الرسائل المرسلة إلى نسخة متماثلة واحدة إلى نسخ متماثلة أخرى إذا لزم الأمر.
  4. في حالة فشل النسخة المتماثلة في التحقق من الصحة الذي أجراه Traffic Manager (TM)، سيستبعد TM نقطة نهاية المثيل الفاشل من عملية تحليل المجال الخاصة به. للحصول على التفاصيل، راجع أدناه المرونة والتعافي من الكوارث

إشعار

  • في مستوى البيانات، يعمل مورد Azure SignalR الأساسي بشكل مماثل للنسخ المتماثلة الخاصة به

المرونة والتعافي بعد حدوث الأخطاء الفادحة

تستخدم خدمة Azure SignalR مدير نسبة استخدام الشبكة لإجراء فحوصات السلامة ودقة DNS نحو النسخ المتماثلة الخاصة بها. في ظل الظروف العادية، عندما تعمل جميع النسخ المتماثلة بشكل صحيح، سيتم توجيه العملاء إلى أقرب نسخة متماثلة. على سبيل المثال،

  • سيتم توجيه العملاء القريبين eastus إلى النسخة المتماثلة الموجودة في eastus.
  • وبالمثل، سيتم توجيه العملاء القريبين westus إلى النسخة المتماثلة في westus.

في حالة انقطاع إقليمي في eastus (موضح أدناه)، سيكتشف مدير حركة المرور فشل فحص السلامة لتلك المنطقة. بعد ذلك، سيتم استبعاد DNS الخاص بهذه النسخة المتماثلة الخاطئة من نتائج تحليل DNS لمدير حركة المرور. بعد مدة DNS مدة البقاء (TTL)، والتي تم تعيينها إلى 90 ثانية، ستتم إعادة توجيه العملاء في eastus للاتصال بالنسخة المتماثلة في westus.

رسم تخطيطي لتجاوز فشل النسخة المتماثلة Azure SignalR.

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

رسم تخطيطي لاسترداد تجاوز الفشل للنسخة المتماثلة Azure SignalR.

عملية تجاوز الفشل والاسترداد هذه تلقائية ولا تتطلب أي تدخل يدوي.

بالنسبة لاتصالات الخادم، يعمل تجاوز الفشل والاسترداد بنفس الطريقة التي يعمل بها لاتصالات العميل.

إشعار

  • آلية تجاوز الفشل هذه مخصصة لخدمة Azure SignalR. الانقطاعات الإقليمية لخادم التطبيق خارج نطاق هذا المستند.

تعطيل أو تمكين نقطة نهاية النسخة المتماثلة

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

رسم تخطيطي لإعداد نقطة نهاية النسخة المتماثلة Azure SignalR.

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

رسم تخطيطي لتعديل نقطة نهاية النسخة المتماثلة Azure SignalR.

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

هذه الميزة مفيدة أيضا لاستكشاف المشكلات الإقليمية وإصلاحها.

إشعار

  • نظرا لذاكرة التخزين المؤقت DNS، قد يستغرق تحديث DNS عدة دقائق حتى يصبح ساري المفعول.
  • تظل الاتصالات الموجودة غير متأثرة حتى يتم قطع الاتصال.

التأثير على الأداء بعد إضافة النسخ المتماثلة

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

على وجه التحديد، إذا كان التطبيق الخاص بك يبث عادة إلى مجموعات أكبر (الحجم >10) أو اتصال واحد، فإن تأثير أداء المزامنة بالكاد ملحوظ. إذا كنت تراسل مجموعات صغيرة (بحجم < 10) أو مستخدمين فرديين، فقد تلاحظ المزيد من حمل المزامنة.

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

لمزيد من تقييم الأداء، راجع الأداء.