almessadi.
العودة إلى المشاريع

دراسة حالة مشروع

إحصائيات-كورونا_

بناء لوحة تحكم وAPI لتتبع COVID-19 تركز على تسليم يعتمد على الذاكرة المؤقتة أولاً، وتعقيد تشغيلي منخفض، ومرونة تحت ذروة حركة المرور العالمية الشديدة.

المشكلة

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

المعمارية

كان التصميم بسيطًا عمدًا في المسار الساخن. تم سحب البيانات من مصادر عامة، وتم تطبيعها أثناء الاستيعاب، ودفعها إلى Redis حتى تتمكن طبقة القراءة من تقديم إجابات مُعَدَّة مسبقًا بدلاً من بنائها عند الطلب.

ظل الواجهة الأمامية لـ React تركز في الغالب على العرض، بينما تصرفت واجهة برمجة التطبيقات أكثر كطبقة تسليم تخزين مؤقت بدلاً من كونها خلفية تطبيق تقليدية.

ما الذي كان مهمًا من الناحية التقنية

  • تطبيع البيانات مرة واحدة أثناء الاستيعاب بدلاً من حسابها في كل قراءة
  • الاحتفاظ بـ Redis في المسار الساخن لعمليات البحث السريعة
  • تجنب الأجزاء المتحركة غير الضرورية أثناء حدث حركة مرور عالمية
  • تقديم واجهة أمامية يمكن أن تظل ثابتة وصديقة للتخزين المؤقت

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

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