تخمین ظرفیت (Back-of-Envelope)

تخمین سریع ظرفیت: QPS، فضای ذخیره‌سازی و پهنای باند — با اعداد ۲ و ۱۰ و مثال‌های واقعی

چرا تخمین؟

اولین سؤال مصاحبه: «چند سرور لازم داریم؟» — بدون تخمین ظرفیت، هیچ معماری‌ای قابل دفاع نیست. خبر خوب: فقط چهار عمل ساده + چند عدد حفظی!

اعداد جادویی برای حفظ

مقدار دقیقتقریب
۱ میلیون ثانیه در روز~10⁵
۱ میلیارد~10⁹
۱ GB~10⁹ بایت
QPS تخمینی سرور معمولی~۱۰۰۰

سه تخمین اصلی

۱. QPS (درخواست در ثانیه)

DAU = کاربر فعال روزانه
درخواست/کاربر = r
QPS = DAU × r / 86400 (ثانیه روز)

مثال: ۱M کاربر × ۱۰ درخواست = ~115 QPS میانگین
پیک = ۲ تا ۵ برابر میانگین → ~500 QPS

۲. فضای ذخیره‌سازی

روزانه جدید = DAU × حجم هر آیتم × آیتم/کاربر
سالانه = × ۳۶۵ + ضریب رشد + نسخه‌ها (Replica ×3)

مثال توییتر: ۱M کاربر × ۲ توییت × ۲۵۰ بایت
= ۵۰۰MB/روز = ~180GB/سال × 3 نسخه = ~0.5TB

۳. پهنای باند (Bandwidth)

دیتای ورودی/ثانیه = QPS × حجم متوسط پاسخ
مثال: 500 QPS × 10KB = 5MB/s = 40Mbps

قانون ۲ و ۱۰

مثال کامل: Instagram ساده

فرضمقدار
کاربر فعال روزانه۱۰۰ میلیون
عکس/کاربر/روز۲
حجم عکس (فشرده)۲۰۰KB
خواندن/نوشتن۱۰۰:۱

محاسبه:

نکته مصاحبه: تخمین‌ها را «بلند» انجام دهید — مصاحبه‌گر باید منطق شما را بشنود. اعداد را گرد کنید و فرض‌ها را صریح بگویید: «فرض می‌کنم ۱۰۰ میلیون DAU...».

جمع‌بندی

این مبحث بخشی از دوره آموزش کامل طراحی سیستم (System Design) است.

ابزارهای مرتبط