اختبار الكناري: ما هو وكيف يمكنك الاستفادة منه؟
نشرت: 2022-08-20هناك احتمالات ، إذا لم تكن مبرمجًا ، فأنت لم تسمع أبدًا عن اختبار الكناري. هذا جيد ، ولكن ربما تتساءل ما هو ولماذا يسمى اختبار الكناري؟
المصطلح مشتق من عبارة "الكناري في منجم الفحم". كما ترى ، اعتاد عمال مناجم الفحم إحضار طائر الكناري في قفص معهم إلى منجم الفحم ، حيث أن جزر الكناري لديها قدرة أقل على تحمل الغازات السامة.
لذلك ، عرف العمال أنه إذا مات الكناري ، يجب أن يخرجوا من المنجم. فيما يتعلق بتطوير البرامج ، عند إنشاء برنامج جديد ، يكون الهدف هو اكتشاف المشكلات وحلها في أسرع وقت ممكن ، قبل أن تصبح مشكلة للمستخدمين.
ما هو اختبار الكناري؟
اختبار Canary هو طريقة لتجربة وظائف وميزات جديدة نأمل أن يكون لها تأثير سلبي ضئيل على نهاية المستخدم. يستخدم هذا النوع من الاختبار عادةً مع مجموعة صغيرة من المستخدمين ، حيث يتم تقديم التطبيق مع تغييرات صغيرة. بهذه الطريقة ، سيظل غالبية المستخدمين يستخدمون الإصدار الحالي من البرنامج ، بينما ستستخدم المجموعة الأصغر المحددة من المستخدمين إصدارًا تمت ترقيته قليلاً.
الغرض من هذا التمرين هو السماح لغالبية الأشخاص الذين يستخدمون البرنامج بمواصلة العمل معه ، دون أي مشاكل ، مع دفع التغييرات لنسبة صغيرة فقط من المستخدمين.
يتم كل ذلك مع الحفاظ على كل من الإصدار الحالي والجديد من التطبيق قيد التشغيل في وقت واحد. بعد ذلك ، إذا لم يُرجع اختبار كناري أي أخطاء ، فيمكنك الاستمرار في توسيعه إلى نسب أكبر من المستخدمين.
يتمتع القراء أيضًا : ما هو التطوير السريع للتطبيقات؟ 4 مراحل من منهجية RAD - DevriX
كيف تجري اختبار الكناري؟
تتمثل الخطوة الأولى في اختبار كناري في إطلاق مجموعة من الخوادم أو الحاويات الخلفية لتشغيل الكود الجديد. بمجرد وجود مستخدمين جدد ، سيرسل موازن التحميل نسبة مئوية منهم إلى "مجموعة الكناري".
يقوم متخصصو DevOps بعد ذلك بمراقبة الخوادم لتحديد المشكلات المحتملة ، مثل تحميل الحساب أو ارتفاع معدلات الإدخال / الإخراج. وتذكر أنه حتى في حالة حدوث مشكلات خطيرة ، فمن السهل إعادة الأمور إلى ما كانت عليه ، نظرًا لأن العملية لا تؤثر على كل من يستخدم البرنامج.
بخلاف ذلك ، يمكنك بسهولة تنفيذ وأتمتة اختبار الكناري باستخدام أدوات مثل Spinnaker لتحديد عدد المستخدمين الذين يستخدمون الكود الجديد.
تبلغ النسبة المئوية المذكورة عادةً حوالي 5٪ ، وبمجرد أن يقرر فريق DevOps المعين عدم وجود مشكلات ، يمكنهم زيادة هذه النسبة بشكل مطرد ، حتى يستخدم الجميع إصدار الكود الجديد من التطبيق.
علاوة على ذلك ، يعد اختبار الكناري مفيدًا في المواقف التي لا تتطابق فيها بيئات التطوير أو التدريج مع بيئة الإنتاج تمامًا. يمكن أن يكشف استخدام مجموعة اختبار صغيرة من المستخدمين عن أية مشكلات لم يتم اكتشافها أثناء بيئات التدريج أو التطوير.
يتمتع القراء أيضًا بما يلي: اختبار A / B باستخدام WordPress: الدليل النهائي - DevriX
فوائد وعيوب اختبار الكناري
دعنا نحدد الخير والشر عندما يتعلق الأمر بالاختبار ، باستخدام طريقة الكناري.
فوائد اختبار الكناري
- اختبار العالم الحقيقي . يعد الاختبار في البيئات الداخلية المغلقة أمرًا رائعًا ، ومع ذلك ، فإن القدرة على اختبار البرامج على مستخدمين حقيقيين هي ما يأخذك خطوة إلى الأمام. باستخدام عمليات نشر canary ، يمكنك القيام بذلك بالضبط - اختبار التطبيق الخاص بك على نطاق صغير من الجمهور ، دون المخاطرة بإصدار تطبيق جديد تمامًا.
- إدارة أفضل للمخاطر . إن إطلاق الميزات الجديدة تدريجيًا والتأكد من أنها تعمل بشكل صحيح ، يقلل بشكل كبير من أي أخطاء كبيرة والتكلفة الإجمالية لأي فشل.
باستخدام طريقة اختبار الكناري ، فإنك تقضي بشكل أساسي على الحاجة إلى التراجع عن التحديثات الرئيسية أو إعادة كتابة كميات كبيرة من التعليمات البرمجية. - أكثر توجهاً نحو الأعمال . هل تحتاج إلى تقديم بيانات الأعمال إلى المديرين وموظفي التسويق / المبيعات؟ باستخدام الكناري ، يمكنك عرض النتائج بسرعة كبيرة. على سبيل المثال ، إذا كنت ترغب في اختبار ميزة برنامج جديدة - يمكنك نشر ميزة جديدة لمجموعة صغيرة من المستخدمين ، ثم الانتظار لمعرفة ما إذا كانت الميزة ستتعطل بشكل جيد أم لا ، يمكنك بعد ذلك استخدام هذه البيانات لزيادة المشاركة من أجل منتجك.
عيوب اختبار الكناري
- قضايا البرمجيات . لا تزال هناك تعليمات برمجية غير مختبرة ، لذلك ، بطبيعة الحال ، هناك مخاطر متضمنة. في حالة تعرض عدد قليل من المستخدمين لمشاكل كبيرة مع ميزة معينة ، فمن الأفضل تخطي اختبار الكناري لصالح اختبار داخلي أكثر صرامة.
- نفقات أكبر . إذا كنت تنوي استخدام موازن تحميل لتقسيم المستخدمين ، فستحتاج إلى بنية تحتية إضافية والمزيد من الإدارة. هذا يعني أنه سيتعين عليك إنشاء بيئتي إنتاج منفصلتين وخلفية لتنفيذ الاختبار. لذلك ، هناك خادمان للتطبيق ، وسطران من الرموز ، وخادمان ويب ، وبنية تحتية للشبكات يجب صيانتها.
- تجربة مستخدم سيئة . قد لا يكون بعض المستخدمين حريصين جدًا على فكرة استخدامهم كمواضيع للاختبار. إذا كنت تريد أن تكون منفتحًا بشأن ما يحدث ، فيمكنك السماح للمستخدمين بمعرفة أنه يتم استخدامهم كـ "جزر الكناري" ، من خلال برنامج "التبني المبكر" أو شيء مشابه.
متى لا تستخدم اختبار الكناري؟
يعد اختبار الكناري مفيدًا في كثير من الحالات ، ومع ذلك ، فهو ليس إجابة مؤكدة لكل شيء (أي 42).
إليك الوقت الذي يجب عليك فيه بالتأكيد عدم استخدام نهج الكناري:
- في البيئات غير المناسبة للنشر المستمر.
- عند التعامل مع البرامج الهامة مثل الأنظمة الداعمة للحياة أو المفاعلات النووية.
- الأنظمة المالية حيث يمكن أن يؤدي الفشل إلى تأثير اقتصادي كبير.
عندما لا يمكنك تحديث البرنامج عن بعد.
كيف يتم نشر الكناري؟
الآن ، دعنا نلقي نظرة على الخطوات الضرورية التي تحتاج إلى اتخاذها ، من أجل تنفيذ عملية نشر الكناري.
- التحضير للنشر على الخادم المرحلي.
- استبعاد عقد الكناري من خلال موازنة التحميل.
- نشر الإصدار الجديد لعقد الكناري.
- اختبر الإصدار الجديد بنصوص اختبار مؤتمتة.
- ربط العقد الكناري لحركة المرور مع موازنة الحمل.
- طرح التحديث لعقد الإنتاج المتبقية.
في الممارسة العملية ، يبدأ النشر بإعداد الخادم المرحلي. تحقق من ملفات التكوين واختبار البرامج النصية وإنشاء أدوات وما إلى ذلك. بعد ذلك ، يمكنك إما تشغيل الاختبارات الآلية أو اليدوية ، أو ترك الخادم مباشرًا ومعرفة ما إذا كان كل شيء يعمل بشكل جيد ، أو ما إذا كان يتعطل.
متى تدفع الكناري إلى الإنتاج؟
بمجرد اختبار تحديث الكناري الخاص بك على 5 أو 10٪ من المستخدمين ، وكل شيء يعمل بشكل صحيح ، يمكنك المتابعة لمضاعفة أو مضاعفة النسبة المئوية لمستخدمي الاختبار.
بعد ذلك ، اختبر مرة أخرى ، واجمع التعليقات من المقاييس ، وبمجرد أن تقوم بتقييم كل شيء على ما يرام ، مرة أخرى ، يمكنك الاستمرار في تحديث 70٪ من بيئة الإنتاج.
أخيرًا ، كرر إجراء الاختبار ، وإذا كان كل شيء على ما يرام ، فقم بطرح الإصدار الجديد من البرنامج على 100٪ من المستخدمين ، وبالطبع ، استمر في المراقبة.
الشركات التي نفذت تطبيق Canary Deployment
لتوضيح أن نشر canary هو طريقة شائعة للتنفيذ ، سنلقي نظرة على بعض الشركات التي تستخدم نشر canary.
نيتفليكس
يستخدم عملاق خدمة البث المباشر تحليل الكناري الآلي مع Kayenta منذ عام 2018. وهذا يتيح تحديثات سريعة للغاية لبيئة إنتاج Netflix. تذكر الشركة أن طريقة النشر هذه قد زادت من إنتاجية المطورين مع تقليل مخاطر إجراء تغييرات في بيئة الإنتاج الخاصة بهم.
انستغرام
كانت منصة الوسائط الاجتماعية هذه أيضًا من المعجبين منذ فترة طويلة بنشر الكناري. شارك المؤسس المشارك والمدير التقني ، مايك كريجر ، أن إصدارات الكناري تضمن أن الحشرات لا تسبب الكثير من الضرر وتؤثر فقط على مجموعة صغيرة من الأشخاص.
جوجل
هل تعلم أن Google Chrome له إصدار خاص مخصص للمطورين؟ هذا صحيح ، يسمح لك Google Chrome Canary باختبار واجهات برمجة التطبيقات لمنصة الويب الجديدة ومعرفة الشكل الذي سيبدو عليه مستقبل المتصفح قبل أي شخص آخر.
مايكروسوفت
تستخدم Microsoft طاقمها الخاص لاختبار كناري لجميع تحديثات منتجاتها. كانت العملية سارية منذ نظامي التشغيل Windows Vista و Microsoft Azure. تم إجراء ترقية Windows 10 أيضًا باستخدام تحديثات canary لأنظمة تشغيل موظفيها.
ملخص
يعد اختبار Canary طريقة رائعة لتقديم إصدارات جديدة من التطبيقات بسرعة ، في بيئات الاختبار الواقعية. ليس ذلك فحسب ، بل إنه يسمح بإدارة أفضل للمخاطر وبيانات أكثر قابلية للتتبع.
على الرغم من أن اختبار الكناري له العديد من الفوائد ، إلا أنه ليس دائمًا الحل لكل المواقف. تأكد من إجراء البحث الخاص بك قبل أن تبدأ في نشر الكناري ، وإلا فقد يأتي بنتائج عكسية عليك.