
آموزش ساخت Serverless Function ها در Azure
آموزش ساخت Serverless Function ها در Azure یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته آموزشی برنامه نویسی در Microsoft Azure - ساختن Serverless Function ها است که با نام اصلی Microsoft Azure Developer - Create Serverless Functions از شرکت Pluralsight منتشر شده است.
کد تابعتابع مفهوم اولیه در پلتفرم Azure Functions است. یک function شامل دو نکته مهم است:
- کد شما، که می تواند به زبان های مختلف نوشته شود و یا از برخی از پیکربندی ها استفاده کند.
- فایل function.json، که برای زبان های کامپایل شده بکار می رود. این فایل config به طور خودکار از annotation های موجود در کد ایجاد می شوند که برای زبان های اسکریپت باید فایل config را خودتان تهیه کنید. فایل function.json اطلاعات مربوط به trigger ها و binding ها و دیگر تنظیمات پیکربندی های تابع را تعریف می کند. هر تابع فقط و فقط یک trigger دارد. سیستم Runtime از فایل config برای مشخص کردن event هایی که باید monitor بشوند تا اینکه چگونه داده ها وارد تابع شوند و یا ارسال گردند و یا از توابع خارج شوند، استفاده می کند.
نحوه ویرایش Function ها در Azure Portal
ویرایشگر توابع که درون Azure Portal وجود دارد که به شما اجازه می دهد کد و فایل function.json خود را مستقیماً به صورت درون خطی (inline) به روز کنید. این عمل فقط برای تغییرات کوچک به معنی بهترین روش (best practice) استفاده از یک local development مانند VS Code است.
اجرای موازی
زمانی که چندین رویداد و یا چندیدن event سریع تر از آنکه runtime تک نخی (single-threaded) بتواند آن ها را اجرا کنند اتفاق بیفتند، سیستم runtime و یا محیط اجرای function که single-threaded است می تواند آن ها را پردازش کند. البته سیستم runtime می تواند function مورد نظر را نیز چندین مرتبه بصورت موازی اجرا کند.

درواقع یک function app از Consumption hosting plan و یا یک App Service hosting plan معمولی می تواند چندیدن اجرای موازی از یک تابع را با استفاده از چندین thread پردازش کند. حداکثر تعداد اجرای همزمان توابع در هر instance از function app بر اساس نوع trigger مورد استفاده و همچنین منابع استفاده شده توسط سایر توابع در function app متفاوت است.
ساخت REST API با Azure Functions در ابزارهای توسعه مختلف
در آموزش Microsoft Azure Developer - Create Serverless Functions، ساخت Function تنها به استفاده از یک محیط محدود نیست؛ ایجاد توابع از طریق Azure Portal، Visual Studio و Visual Studio Code در سرفصلها قرار دارد. آشنایی با این روشها کمک میکند تفاوت میان پیکربندی از طریق پورتال و توسعه در محیطهای کدنویسی را درک کنید. آموزش همچنین Function Appها، فایلهای JSON و Hosting Modelها را بررسی میکند تا با اجزای موردنیاز برای تعریف و اجرای توابع آشنا شوید. این مسیر برای توسعهدهندگانی مناسب است که میخواهند Functionهای خود را در محیطی متناسب با شیوه کارشان پیادهسازی کنند.
یکی از سناریوهای مشخص آموزش، ساخت REST API با Azure Functions است. در نمونه عملی، مسیری برای دریافت یک Todo بر اساس شناسه آن بررسی میشود و تست با Postman نیز در سرفصلها آمده است. این مثال نشان میدهد چگونه میتوان یک endpoint برای پاسخگویی به درخواست HTTP ایجاد کرد و رفتار آن را مستقل از رابط کاربری آزمود. بررسی Function Routeها نیز به درک نحوه تعیین مسیرهای دسترسی کمک میکند. کنار هم قرار گرفتن این مباحث، تصویری عملی از ساخت یک API سبک ارائه میدهد که منطق سمت سرور آن با Azure Functions اجرا میشود.
اجرای Functionها با Triggerهای زمانبندیشده و Containerها
رفتار یک Function به نحوه فعال شدن آن و محیطی که در آن اجرا میشود وابسته است. این آموزش انواع Triggerها و مدلهای Hosting را بررسی میکند و نمونه Timer Triggered Function را نیز در بر میگیرد. یک Trigger زمانبندیشده برای اجرای عملیات در زمانهای مشخص کاربرد دارد؛ برای مثال، میتوان وظایف دورهای را بدون وابستگی به درخواست مستقیم کاربر طراحی کرد. شناخت Function Appها و تنظیمات مرتبط نیز کمک میکند جایگاه هر تابع را در ساختار اجرایی Azure بهتر درک کنید و روش اجرای مناسب را بر اساس نیاز سناریو انتخاب کنید.
بخش پایانی مسیر به اجرای Functionها در Azure و داخل Containerها میپردازد. اجرای کانتینری میتواند برای سناریوهایی مفید باشد که بستهبندی محیط اجرا و کنترل وابستگیهای برنامه اهمیت دارد؛ بااینحال، انتخاب روش اجرا باید با نیازهای عملیاتی و مدل میزبانی هماهنگ شود. آموزش همچنین به انتخاب پایگاه داده اشاره میکند، موضوعی که هنگام ساخت API یا پردازش دادهها بخشی از طراحی راهکار است. ترکیب ایجاد Function در ابزارهای مختلف، تعریف Routeها، کار با Triggerها و بررسی اجرای کانتینری، به توسعهدهندگان کمک میکند مسیر ساخت تا اجرای یک راهکار مبتنی بر Azure Functions را بهتر بشناسند.
سرفصل مطالب آموزش ویدیویی ساخت Serverless Function ها در Azure
فصل اول: مقدمه این دوره آموزشی- مقدمه
- مقدمه
- بررسی Trigger ها
- بررسی Binding ها
- بررسی معماری Serverless
- بررسی Hosting Model ها
- بررسی Development Environment ها
- قابلیت های بیشتر
- بررسی Function App ها
- جمع بندی
- توسعه دادن Function ها در Azure Portal
- آموزش عملی: ایجاد کردن یک Function App
- آموزش عملی: ایجاد کردن یک Function
- آموزش عملی: تست کردن یک Function
- آموزش عملی: مشاهده تاریخچه فراخوانی Function
- آموزش عملی: بررسی فایل json
- جمع بندی
- شروع راه اندازی
- آموزش عملی: ایجاد کردن یک Function App در ویژوال استودیو
- آموزش عملی: ایجاد کردن یک Function
- آموزش عملی: تست کردن یک Function به صورت Local
- جمع بندی
- معرفی Visual Studio Code
- آنچه شما نیاز دارید
- آموزش عملی: استفاده کردن از Azure Functions Core Tools
- آموزش عملی: استفاده کردن از Visual Studio Code
- جمع بندی
- بررسی Function Route ها
- آموزش عملی: ایجاد کردن یک Todo
- آموزش عملی: Get کردن تمامی Todo ها
- آموزش عملی: Get کردن یک Todoبا استفاده از Id
- آموزش عملی: به روز رسانی کردن یک Todo
- آموزش عملی: حذف کردن یک Todo
- آموزش عملی: تست کردن با Postman
- آموزش عملی: تست کردن در یک Webpage
- جمع بندی
- بررسی Trigger ها و Binding ها
- انتخاب یک پایگاه داده
- آموزش عملی: استفاده کردن از Table Storage
- آموزش عملی: تست کردن Table Storage
- آموزش عملی: بررسی یک Timer Triggered Function
- آموزش عملی: بررسی یک Queue Triggered Function
- جمع بندی
- بررسی گزینه های Deployment
- آموزش عملی: Publish کرد از درون Visual Studio
- آموزش عملی: تست کردن در Azure
- آموزش عملی: پیکربندی کردن Proxy ها
- آموزش عملی: امنیت (Security)
- جمع بندی
- بررسی Docker Image های مربوط به Azure Functions
- چرا از Container ها استفاده کنیم؟
- آموزش عملی: ایجاد کردن یک Dockerfile
- آموزش عملی: اجرای یک Container به صورت Local
- آموزش عملی: اجرا کردن در Azure
- آموزش عملی: بررسی Proxy ها های قابل پیکربندی
- جمع بندی







