
ایجاد یک دروازه API در یک گره بدون سرور می تواند به سازمان شما کمک کند تا هزینه های محاسباتی را کاهش دهد. امروزه چندین گزینه بدون سرور در دسترس توسعه دهندگان است، از جمله خدمات ابری مدیریت شده مانند Firebase، Google Cloud و AWS.
این ارائه دهندگان ابری، برنامه های بدون سرور را قادر می سازند تا با خدمات و چارچوب های محاسباتی نسل بعدی ساخته شوند.
امروز، مهندسان DEV IT ما به شما نشان میدهند که چگونه میتوان از AWS Lambda، API Gateway و چارچوب بدون سرور برای ساخت REST API استفاده کرد.
AWS Lambda سومین سرویس محاسبات ابری از آمازون است و با هر دو EC2 (Elastic Compute Cloud) و ECS (Elastic Container Service) متفاوت است زیرا زمانی که یک رویداد ماشه ای رخ می دهد، کد را اجرا می کند.
AWS Lambda در حال حاضر دارای پشتیبانی توسعه برای جاوا، پایتون و Node.js با زبان های برنامه نویسی بیشتری است که در آینده اضافه خواهند شد.
فریم ورک بدون سرور چیست؟
قبل از پرداختن به این فرآیند، مهم است که بدانید چارچوب بدون سرور چیست و چگونه کار می کند.
بدون سرور به عنوان یک چارچوب چند فروشنده وجود دارد که به شما امکان می دهد برنامه های سرور را با استفاده از دیگران بسازید ارائه دهندگان خدمات ابری اگر بخواهید از AWS. در مورد AWS Lambda، از CloudFormation استفاده می کند. این به او اجازه می دهد تا ساختار پروژه را بسازد و عملکردهای آن را به روشی روان اجرا کند.
چرا از سرور بدون سرور استفاده کنیم؟
اگر شما یا کارفرمایتان هنوز متقاعد نشده اید که از یک برنامه بدون سرور مبتنی بر ابر به جای برنامه میزبانی شده روی سرور استفاده کنید، در اینجا چند دلیل برای تغییر نظر وجود دارد:
- هزینه های از دست رفته و نگهداری
- آسان به مقیاس
برنامه های بدون سرور مشابه مدل پرداخت به ازای کلیک مورد استفاده در تبلیغات آنلاین هستند.
در اینجا شما به ازای هر درخواست پرداخت می کنید و بنابراین در هزینه های سرور در زمانی که از آن استفاده نمی شود صرفه جویی می کنید. همچنین سرور خود نگهداری می شود و بنابراین تنها چیزی که باید نگران آن باشید کد خود است.
شروع کار با چارچوب بدون سرور
1. برای نصب Serverless روی دستگاه خود، دستور npm زیر را اجرا کنید.
$ npm نصب بدون سرور -g
2. کد ذکر شده در زیر را در فایل index.ts خود اضافه کنید
3. نام دایرکتوری را از public به tmp تغییر دهید.
4. در تمامی فایل های موجود کلمه public را با tmp جایگزین کنید.
API Gateway چیست؟
Amazon API Gateway یک سرویس کاملاً مدیریت شده است که به توسعه دهندگان این امکان را می دهد تا APIهایی را در مقیاس ایجاد، انتشار، نگهداری، نظارت و ایمن کنند.
با API Gateway یک URL API ایجاد کنید
1. به کنسول API Gateway بروید و روی Build in HTTP API کلیک کنید.
2. نام را وارد کنید و روی Browse and Create کلیک کنید
3. دکمه ایجاد را فشار دهید و خواهید دید که فراخوانی شده است
4. با کلیک کردن روی URL تماس، بررسی کنید که آیا API شما در دسترس است
S3 چیست؟
سطل ها ظروفی هستند که آمازون S3 اطلاعات و اشیاء را در آن ذخیره می کند. شما می توانید چندین شی را از برنامه خود در اینجا ذخیره کنید.
یک فایل .zip را در S3 آپلود کنید
1. یک سطل در s3 ایجاد کنید.
2. یک شی بسازید و یک فایل فشرده با کد گره خود آپلود کنید.
3. URL شی را بررسی کنید.
پیکربندی لامبدا بدون سرور
1. یک تابع در لامبدا ایجاد کنید.
2. یک ماشه در تابع لامبدا اضافه کنید. API Gateway را در پیکربندی تریگر انتخاب کنید. شناسه API را در فیلد اضافه کنید.
3. هنگام آپلود از دکمه مکان S3 را اضافه کنید.
4. URL S3 را در پنجره بازشو اضافه کنید.
نکته پایانی
هنگامی که فرآیند بالا را درک کردید، خواهید دید که میزبانی یک برنامه بدون سرور بسیار ساده تر از میزبانی یک برنامه سنتی است.
اگر در مورد این فرآیند سؤالی دارید یا علاقه مند به یادگیری در مورد موضوع دیگری هستید، در زیر نظر دهید و ما مستقیماً به آن پاسخ خواهیم داد.
پست نحوه میزبانی برنامه های بدون سرور برای صرفه جویی در هزینه ها در توسعه Node.js اولین بار در DEV IT Journal ظاهر شد.