أدخل كلمات البحث واضغط على إدخال.

كارثة "الدقيقة الأولى".. لماذا انهار تطبيق نتائج البكالوريا وكيف كان يمكن تفادي السقوط بفكرة بسيطة؟

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

​ينتظر الطالب وأهله شهوراً طويلة لقطاف ثمرة عام كامل من التعب، وعندما تحين لحظة الحسم لإعلان النتائج، يتوقف كل شيء: تطبيق يتجمد من اللحظة الأولى، وشاشات خطأ. ​المبرر الجاهز غالباً ما يكون: "لم نتوقع دخول ملايين الأشخاص في نفس اللحظة!". لكن هل هذا العذر منطقي تقنياً؟ وهل يبرر انهيار الخدمة أمام 350 ألف طالب؟

​تشبيه بسيط: "أمين المكتبة والخزنة الفولاذية" ​لتخيل السبب الحقيقي للانهيار بعيداً عن تعقيدات البرمجة، دعنا نتخيل أن النتائج موجودة داخل مكتبة ضخمة: ​المنهجية الخاطئة (ما حدث فعلياً): قام مصممو التطبيق بوضع موظف واحد فقط أمام الخزنة الفولاذية في القبو. عندما يدخل الطالب ويطلب نتيجته، ينزل الموظف إلى القبو، يفتح الخزنة، يبحث بين الأوراق، يخرج نتيجة الطالب، يقرأها له، ثم يعيد الورقة ويغلق الخزنة من جديد! وعندما هجم ملايين الاهالي والطلاب في نفس الدقيقة يصرخون ويطلبون نتائجهم، انهار الموظف المسكين وتوقف عن العمل تماماً.

​كيف كان ينبغي أن تسير الأمور؟: علامات الطلاب بيانات ثابتة لا تتغير. بدلاً من جعل الموظف يركض إلى القبو في كل مرة، كان ينبغي طباعة 350 ألف بطاقة صغيرة مسبقاً، ووضعها على طاولات عرض مفتوحة في الصالة. يأتي الطالب، يسحب بطاقته الجاهزة في جزء من الثانية ويمشي، دون أن يزعج الموظف أو يفتح الخزنة مطلقاً!

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



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

​غياب "طاولة العرض السريعة": لم يتم استخدام ما يُعرف بـ "الذاكرة المؤقتة"، وهي تقنية تُبقي الإجابات جاهزة في مقدمة النظام لتقديمها فوراً لأي هاتف يطلبها دون أي استهلاك لمعالج السيرفر. ​كيف كان يجب تحضير النظام؟ ​حل هذه المشكلة لا يتطلب خوادم خيالية بملايين الدولارات، بل يتطلب طريقة تفكير هندسية سليمة:

​تجهيز النتائج مسبقاً: قبل إطلاق التطبيق بساعة، يتم تحويل نتيجة كل طالب إلى ملف إلكتروني مصغر جداً (حجمه أصغر من حجم أي صورة عادية). ​التوزيع الذكي: وضع هذه الملفات الجاهزة على أجهزة توزيع بسيطة، مهمتها فقط "مناولة" الملف المباشر للمستخدم فور إدخال رقمه. ​تطبيق هاتف أكثر ذكاءً: عند ضغط الطالب على زر الاستعلام، يتم تعطيل الزر تلقائياً لعدة ثوانٍ لمنع الضغط المكرر، وفور ظهور النتيجة تُحفظ داخل الهاتف مباشرة حتى لا يضطر الطلب للذهاب إلى السيرفر مرة أخرى إذا أُغلق التطبيق وفُتح مجدداً. ​

​في عالم الإنترنت اليوم، لا يُعتبر خدمة ملايين من المستخدمين في وقت واحد معجزة تقنية، بل هو أمر روتيني جداً. المشكلة لم تكن في عدد الطلاب واقربائهم، بل في طريقة تقديم الخدمة؛ فعندما تطلب من السيرفر أن "يبحث ويفكر" مع كل لمسة شاشة، سينهار حتماً، بينما لو أعددت له الإجابات مسبقاً، لسلمها لملايين البشر في لمح البصر ودون أن يرف له جفن.

زمان الوصل
    هل أعجبتك المقالة (0)
التعليقات (0)

تعليقات حول الموضوع

لإرسال تعليق,الرجاء تعبئة الحقول التالية
*يستخدم لمنع الارسال الآلي