کتاب Understanding Distributed Systems
نکاتی که هر developerی در مورد distributed applicationها باید بدونه
چرا همه درباره Distributed Systems حرف میزنن؟ 🤔
وقتی اولین بار با سیستمهای توزیعشده آشنا شدم، فکر میکردم فقط برای شرکتهای بزرگ مثل Google و Amazon کاربرد داره. اما حقیقت اینه که امروز تقریباً هر اپلیکیشنی که ازش استفاده میکنیم، یه سیستم توزیعشدهس - از Instagram گرفته تا دیجیکالا.
سیستمهای توزیعشده چهار مشکل اساسی رو حل میکنن:
1️⃣ وقتی ترافیک بیشتر از ظرفیت یه سرور میشه (Scalability)
2️⃣ وقتی نمیخوایم با down شدن یه سرور، کل سیستم از کار بیفته (Resiliency)
3️⃣ وقتی کاربرا از سراسر دنیا دارن به سیستم request میزنن (Performance)
4️⃣ وقتی میخوایم سیستم رو راحت maintain و توسعه بدیم (Maintainability)
اما این قدرت با چالشهایی همراهه: نودها باید با هم communicate کنن، باید coordinate بشن، و باید در برابر failure مقاوم باشن. Leslie Lamport یه جمله معروف داره که میگه: "سیستم توزیعشده جاییه که failure یه کامپیوتری که حتی نمیدونستی وجود داره، میتونه سیستم تو رو خراب کنه."
اگه دارید روی backend کار میکنید یا قراره شروع کنید، درک این مفاهیم دیگه optional نیست - الزامیه. چون دیگه داریم همه چیز رو distributed میسازیم.
نکاتی از فصل اول کتاب Understanding Distributed Systems
با تشکر از جناب Roberto Vitillo برای این کتاب درجه یک!
#understanding_distributed_systems
#roberto_vitillo
@gocasts
Post #744
5.74K

- ❤ 54
- 👍 3
- 🔥 1