help-header

Serverless Computing چیست؟

رایانش بدون سرور، پردازش Serverless یا Serverless Computing، یک روش تامین منابع موردنیاز برای نیازهای پردازشی است.بر خلاف آن‌چه از اسم این روش برمی‌آید، در این روش از سرور استفاده می‌شود، اما اصطلاح Serverless به این دلیل به این نوع پردازش داده می‌شود که هزینه‌ی استفاده از آن با توجه به میزان استفاده واقعی از سرور محاسبه می‌شود و یک مقدار مشخص برای یک بازه زمانی نیست.

در واقع Serverless Computing  یا به اختصار Serverless، نوع خاصی از ساختار Pay as You Go برای سرورهای ابری است. در این روش، دریافت‌کننده‌ی سرویس نیاز به رزرو منابع از قبل ندارد، بلکه به کمک قابلیت مقیاس‌پذیری خودکار، تمام منابع مورد نیاز خود را در لحظه از سرویس‌دهنده‌ی سرور ابری دریافت می‌کند.

به کمک پردازش Serverless، نه‌تنها دیگر نیازی به در اختیار داشتن تجهیزات سروری وجود ندارد، بلکه می‌توان در لحظه زیرساختی مقیاس‌پذیر را مورد استفاده قرار داد. Serverless Computing این قابلیت را فراهم می‌کند که دریافت‌کنندگان سرویس فقط به میزان استفاده‌ای که از منابع تامین‌کنندگان سرویس می‌کنند هزینه بپردازند. در این مدل دیگر نیازی نیست برای پیک مصرف، منابع پردازشی از قبل رزرو شوند، بلکه به‌شکل کاملن خودکار، با افزایش تعداد کاربران و ترافیک دریافتی و یا کاهش آن، منابع اختصاص یافته برای یک مشتری افزایش یا کاهش پیدا می‌کند.

توجه به این نکته مهم است که Serverless Computing هم‌چنان سرور را مورد استفاده قرار می‌دهد و اصطلاح Serverless تا حدی گمراه کننده است. این اصطلاح اشاره به رفع تمام نگرانی‌های تامین زیرساخت به‌وسیله‌ی تامین‌کننده‌ی سرویس به‌دلیل مقیاس‌پذیری منابع در لحظه دارد.

مزایای پردازش Serverless

Serverless Computing مزایای متعددی را برای کسب‌وکارها و توسعه‌دهندگان فراهم می‌کند. در این بخش به معرفی مهم‌ترین این مزایا می‌پردازیم.

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