يعني إيه حساب على ضهر الورقة؟
في الإنترفيو ممكن يطلب منك تقدّر السيستم محتاج كام سيرفر أو كام تيرا تخزين. مش مطلوب رقم دقيق — المطلوب إنك تفكر بشكل منطقي وبأرقام تقريبية عشان تعرف الديزاين ده هيستحمل ولا لأ.
قوى الاتنين وأرقام الـ latency
| الوحدة | تقريبًا |
|---|---|
| KB | 10³ بايت |
| MB | 10⁶ |
| GB | 10⁹ |
| TB | 10¹² |
| PB | 10¹⁵ |
حرف ASCII = بايت واحد. الميموري سريعة والديسك بطيء، فتجنّب الـ disk seeks. الضغط البسيط سريع — اضغط قبل ما تبعت على النت. والنقل بين داتا سنترز في ريجنز مختلفة بياخد وقت، متعاملهوش كأنه LAN.
عدد التسعات
الـ SLA هو الاتفاق بينك وبين العميل على نسبة الـ uptime. كل ما التسعات تزيد، كل ما الموضوع يبقى أغلى وأصعب.
| Availability | Downtime تقريبًا في السنة |
|---|---|
| 99% | حوالي ٣٫٦٥ يوم |
| 99.9% | حوالي ٨٫٨ ساعة |
| 99.99% | حوالي ٥٣ دقيقة |
| 99.999% | حوالي ٥ دقايق |
مثال: تطبيق مدارس
نفترض ٢ مليون يوزر نشط يوميًا، كل واحد بيعمل ١٠ ريكوستات في اليوم:
QPS ≈ 2_000_000 × 10 ÷ 86_400 ≈ 230
الـ peak غالبًا ضعف أو أكتر: حوالي ٥٠٠–٧٠٠ ريكوست في الثانية.
لو ٥٪ من اليوزرز بيرفعوا ملف ٥٠٠KB يوميًا:
2M × 0.05 × 0.5MB = 50GB في اليوم، يعني حوالي ١٨TB في السنة.
Checklist الحسابات
🧠 اختبر نفسك
١) مليون يوزر، كل واحد ريكوست واحد في اليوم. الـ QPS تقريبًا كام؟
حوالي ١٢ ريكوست في الثانية (
1_000_000 ÷ 86_400).٢) ليه بنحسب Peak QPS مش المتوسط بس؟
لأن الساعة اللي فيها ضغط هي اللي بتقع السيرفرات، مش متوسط اليوم.
٣) 99.99% availability يعني downtime قد إيه في السنة تقريبًا؟
حوالي ٥٣ دقيقة.
٤) ليه تكتب افتراضاتك بصوت عالي؟
عشان الإنترفيور يصحّح الرقم، وانت ترجع تعيد الحساب من غير ما تضيع الخيط.