کتابخانه علی امیدیان
System Design • Terminologies

۵۰ اصطلاح مهم System Design، با توضیح فارسی

فیلتر دسته‌بندی

چطور بخوانیم؟

اول مفهوم را بفهمید، بعد جای استفاده‌اش را. مثلا Cache فقط «سریع‌تر کردن» نیست؛ خودش مشکل Invalidation، Stale Data و هزینه عملیاتی می‌آورد.

قانون ساده

در System Design اصطلاحات ابزار تصمیم‌گیری‌اند. وقتی می‌گوییم Sharding، باید بدانیم چه چیزی را با چه کلیدی تقسیم می‌کنیم و چه Trade-offی می‌پذیریم.

چیزی پیدا نشد. عبارت جستجو یا فیلتر را کمی عوض کن.

مقایسه‌های مهم

چند جفت اصطلاح که در مصاحبه و طراحی واقعی زیاد با هم اشتباه گرفته می‌شوند.

Latency vs Throughput

Latency زمان یک درخواست است؛ Throughput تعداد کارهایی است که سیستم در یک بازه انجام می‌دهد.

Horizontal Scaling vs Vertical Scaling

در اولی چند ماشین اضافه می‌کنیم؛ در دومی همان ماشین را قوی‌تر می‌کنیم. اولی پیچیده‌تر ولی رشدپذیرتر است.

Orchestration vs Choreography

در Orchestration یک هماهنگ‌کننده مرکزی داریم؛ در Choreography سرویس‌ها با Event به هم واکنش نشان می‌دهند.