MAISON CODE .
/ BFCM · Scaling · Infrastructure

الذروة: تنظيم الجمعة السوداء

10.000 طلب في الثانية. لا يسمح بالتوقف. كيف نقوم بتحميل الاختبار وتجميد التعليمات البرمجية وتوسيع نطاق البنية التحتية لـ BFCM.

AB
Alex B.
الذروة: تنظيم الجمعة السوداء

الجمعة السوداء (BFCM) هي لعبة Super Bowl للتجارة الإلكترونية. تقضي 11 شهرًا في التحضير لمدة 4 أيام. إذا تعطلت لمدة 10 دقائق، فستخسر 100 ألف دولار.

تجميد الكود

في الأول من نوفمبر، ندخل تجميد الكود. لا توجد ميزات جديدة. لا توجد “إصلاحات سريعة لـ CSS”. يُسمح فقط بأخطاء P0 (الحاجبات الحرجة). لماذا؟ لأن كل عملية نشر تحمل مخاطر. الاستقرار أمر بالغ الأهمية.

اختبار التحميل باستخدام k6

لا نخمن ما إذا كان الموقع يمكنه التعامل مع حركة المرور. نحن نهاجمه. نحن نستخدم k6 لمحاكاة 50000 مستخدم متزامن يقومون بالتصفح والإضافة إلى سلة التسوق والخروج. نحن نحدد الاختناقات (عادةً استعلامات قاعدة البيانات غير المحسنة أو واجهات برمجة التطبيقات التابعة لجهات خارجية) ونصلحها.

غرفة الحرب

في “الليلة الكبيرة” نحن لا ننام. أنشأنا غرفة حرب افتراضية.

  • لوحات معلومات Datadog: مراقبة معدلات الخطأ (5xx)، وزمن الاستجابة (p95)، واستخدام وحدة المعالجة المركزية.
  • PagerDuty: تنبيهات تلقائية في حالة انخفاض معدل نجاح استجابات واجهة برمجة التطبيقات إلى أقل من 99%.
  • الإستراتيجيات الاحتياطية: في حالة توقف واجهة برمجة تطبيقات البحث، فإننا نقوم تلقائيًا بإخفاء شريط البحث. يجب أن يتحلل الموقع بأمان، ولا ينفجر.

البقاء على قيد الحياة ليس الحظ. هو التحضير.