منطق ایجنت‌ها › M7 — زیرساخت، پلن و هزینه
۷.۲ پایدار مرجع ~۲۵ دقیقه

سرور، VPS و ابر

قبل از این فصل: فصل ۷.۱

در یک نگاه

۷.۲.۱

سرور چیست

سرور چیز عجیبی نیست: یک کامپیوتر که همیشه روشن است و به شبکه وصل است. همین. صفحه‌کلید و نمایشگر ندارد، و از راه دور با آن کار می‌کنی — با همان ترمینالِ فصل ۷.۱.۲.

تفاوت واقعی‌اش با لپ‌تاپ تو، سه چیز است — و هیچ‌کدام «قدرت» نیست:

لپ‌تاپ من در برابر سرور لپ‌تاپ خاموش می‌شود، جابه‌جا می‌شود و اینترنتش عوض می‌شود؛ سرور همیشه روشن است، آدرس ثابت دارد و ماهانه هزینه دارد. لپ‌تاپ تو می‌بندی‌اش، خاموش می‌شود جابه‌جا می‌شود آدرسش عوض می‌شود هزینه‌ی اضافه: صفر سرور همیشه روشن است جایی ثابت می‌ماند آدرس ثابت دارد هزینه: ماهانه، همیشه تفاوت در «همیشه روشن» است، نه در قدرت
لپ‌تاپ تو احتمالاً از یک سرور ارزان قوی‌تر است. چیزی که ندارد، پیوستگی است.

و این نکته را جدی بگیر، چون تصورِ غالب برعکس است: سرورهای ارزان معمولاً از لپ‌تاپ تو ضعیف‌ترند. پس اگر دنبال سرعت بیشتری، سرور جواب نیست. سرور جوابِ پیوستگی است.

۷.۲.۲

VPS: کامپیوتری که اجاره می‌کنی

VPS — که «وی‌پی‌اس» خوانده می‌شود — یعنی سرور مجازی خصوصی. یک کامپیوتر فیزیکیِ بزرگ در یک مرکز داده تکه‌تکه می‌شود و هر تکه به یک نفر اجاره داده می‌شود. تو تکه‌ی خودت را می‌گیری و از دید تو، یک کامپیوتر کامل است.

چیزی که اجاره می‌کنی معمولاً با سه عدد توصیف می‌شود:

و برای اجاره‌کردنش لازم است بدانی که هزینه‌اش ماهانه و پیوسته است — یعنی حتی ماهی که هیچ استفاده‌ای نکردی هم پرداخت می‌کنی. این با مدل پرداخت به‌مصرفِ فصل ۷.۶.۱ فرق اساسی دارد و همان‌جاست که اغلب پول هدر می‌رود.

۷.۲.۳

local در برابر cloud

دو کلمه که مدام می‌شنوی:

و تفاوتشان برای تو عملی است، نه فنی:

به‌خاطر بسپار هر چیزی که روی ابر می‌گذاری، یک نسخه‌ی دیگر از داده‌ات در جایی است که تو کنترلش نمی‌کنی. این نه ترساندن است و نه دلیلِ استفاده‌نکردن — ولی وقتی داری بین local و cloud انتخاب می‌کنی، این یکی از کفه‌های ترازو است، نه فقط راحتی و هزینه.

۷.۲.۴

کِی واقعاً به سرور نیاز داری (اغلب: نداری)

حالا صادق‌ترین بخش این فصل. یک سؤال، و اگر جوابش «نه» بود سرور لازم نداری:

به‌خاطر بسپار «کاری هست که باید وقتی من نیستم انجام شود؟» اگر نه — سرور لازم نداری، هرچقدر هم کارت جدی به نظر برسد.

سرور لازم است وقتی:

و سرور لازم نیست وقتی — که حالتِ غالب است:

و یک راه میانی که خیلی‌ها نمی‌بینند: لپ‌تاپ خودت می‌تواند کارِ زمان‌بندی‌شده انجام دهد، به شرط اینکه آن ساعت روشن باشد. برای کاری که هر روز صبح که پشت میزی لازم است، این کافی است — و صفر تومان هزینه دارد.

نکته‌ی طلایی اگر شک داری، اول یک ماه local کارش کن. بعد از یک ماه دقیقاً می‌دانی چند بار لازمش داشتی، کِی، و چقدر طول کشید — و آن‌وقت تصمیمِ سرور با عدد گرفته می‌شود نه با حدس. تقریباً همیشه هم جوابش «لازم نبود» درمی‌آید.
ضدالگو اجاره‌کردن سرور برای «حرفه‌ای‌تر شدن». سرور یک مسئولیت است، نه یک نشان: باید به‌روزش کنی، امنش کنی، و وقتی نیمه‌شب خوابید درستش کنی. اگر کارت به آن نیاز ندارد، سرور فقط یک قلم هزینه‌ی ماهانه و یک کار اضافه است — و معمولاً چند ماه بعد فراموش‌شده و پرداخت‌شده باقی می‌ماند.

تمرین (فکری)

برای این دو کار بگو سرور لازم است یا نه — و جوابت را با همان سؤالِ بخش ۷.۲.۴ توجیه کن:

  1. هر روز صبح، خلاصه‌ای از ایمیل‌های دیشب برایت آماده شود و ساعت ۷ در تلگرامت باشد.
  2. هر بار که فایل اکسلی از مشتری می‌رسد، تمیزش کنی و گزارشی از آن دربیاوری.

و بعد همین سؤال را روی یک کار از بک‌لاگ خودت اجرا کن.

پاسخنامه — یکی روشن است، یکی تله دارد

۱ — سرور لازم است. جواب روشن. «ساعت ۷ صبح» و «دیشب» یعنی کار باید وقتی تو نیستی انجام شود، و «در تلگرامت باشد» یعنی باید به بیرون هم وصل شود. هر دو شرطِ بخش ۷.۲.۴ برقرار است.

۲ — تله دارد، و جواب «نه» است. «هر بار که فایلی می‌رسد» شبیه رویدادِ بیرونی به نظر می‌رسد و اغلب همه را به سمت سرور می‌برد. ولی سؤال اصلی را بپرس: آیا باید وقتی تو نیستی انجام شود؟ نه — تو خودت فایل را دریافت می‌کنی، و می‌توانی همان موقع که دیدی‌اش کار را شروع کنی. تأخیرِ چند ساعته اشکالی ندارد.

و دو دلیل اضافه که «نه» را قوی‌تر می‌کنند: فایل مشتری روی دستگاه توست (بردنش به سرور یعنی یک مسیر خروجِ داده‌ی تازه — فصل ۵.۳.۲)، و فایل اکسلِ فارسی همان چیزی است که فصل ۴.۲.۴ گفت اغلب دستِ آدم لازم دارد.

الگویی که این دو نشان می‌دهند: «رویداد از بیرون می‌آید» شرطِ کافی نیست. شرط این است که جوابِ آن رویداد نتواند منتظر تو بماند. اگر می‌تواند منتظر بماند، سرور لازم نیست.

ذخیره شد