آموزش Bootcamp چارچوب بدون سرور: Node.js، AWS و Microservices

Serverless Framework Bootcamp: Node.js, AWS & Microservices

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: بیاموزید که چگونه با استفاده از فریم ورک بدون سرور، برنامه های کاربردی قابل اعتماد و مقیاس پذیر ایجاد کنید. آشنایی با معماری Microservices Framework Serverless و مجوز در Microservices تجربه عملی با خدمات وب آمازون در حال توسعه برنامه هایی که می توانند بدون زحمت از توسعه نرم افزار در مقیاس فوق العاده با NodeJS REST API استفاده کنند. توسعه داده ها پایداری (DynamoDB) Microservices ارتباط سست با استفاده از صف های پیام (SQS) پیش نیازها: درک اولیه جاوا اسکریپت و/یا NodeJS توصیه می شود، اما لازم نیست دانش پایه در توسعه Back-end توصیه می شود، اما لازم نیست.

تا به حال احساس کرده اید که دوست دارید یک برنامه کاربردی بسازید که بتواند میلیون ها کاربر را مدیریت کند، اما از ایده مدیریت (یا یادگیری نحوه مدیریت) زیرساخت پشت آن وحشت داشتید؟

تا به حال احساس کرده اید که بخواهید به جای اطمینان از راه اندازی و راه اندازی سرویس های خود، روی ارائه ویژگی های ارزشمند تمرکز کنید؟

تا به حال احساس کرده اید که بیش از آنچه باید پرداخت می کنید؟


خبر خوب!

معماری بدون سرور درد قابلیت اطمینان سایت را از دوش شما برمی دارد. با معماری بدون سرور، شما و تیمتان می توانید بر توسعه ویژگی ها تمرکز کنید. برنامه شما بدون دردسر مقیاس می شود و به طور قابل اعتمادی به کاربران خدمات ارائه می دهد. برای ارائه یک برنامه کاربردی در مقیاس، نیازی به متخصص زیرساخت ندارید. با سرور بدون سرور، شما فقط برای آنچه استفاده می کنید هزینه می کنید.

چارچوب بدون سرور، روش توسعه برنامه‌های بدون سرور را متحول می‌کند، با ارائه یک API مناسب برای توسعه‌دهنده که از ده‌ها ارائه‌دهنده ابر از جمله سرویس‌های وب آمازون، Google Cloud Platform، Microsoft Azure و غیره پشتیبانی می‌کند.

بیش از آن، Serverless Framework به طور هوشمندانه به شما کمک می‌کند زیرساخت خود را به عنوان کد (IaC) مدیریت کنید، که شانس پرداخت هزینه برای سرویس‌هایی را که استفاده نمی‌شوند از بین می‌برد.

با یک انجمن فعال و یک اکوسیستم غنی از افزونه ها، می توانید کارها را با سرعت نور و بدون کد دیگ بخار انجام دهید.

Serverless Framework agnostic language است، به این معنی که می توانید از زبان و زمان اجرا مورد نظر خود استفاده کنید (Node.js، Ruby، Python، Go، C#، Java، و غیره).

با بیش از 450000 بارگیری در هفته و رشد x5 در دو سال گذشته، تقاضا برای متخصصان بدون سرور در حال افزایش است. این یکی از مهارت های مورد تقاضا در بازار است.

___

در این دوره آموزشی، نحوه توسعه برنامه های کاربردی بدون سرور قابل اعتماد و مقیاس پذیر را با پیروی از معماری میکروسرویس ها یاد خواهید گرفت. این دوره 100% عملی خواهد بود و شما در حال توسعه یک برنامه کاربردی در دنیای واقعی خواهید بود؛

  • REST API و نقاط پایانی CRUD (AWS Lambda، API Gateway)

  • پایداری داده (AWS DynamoDB)

  • صف پیام برای ارتباطات متقابل سرویس (AWS SQS)

  • راه‌اندازهای رویداد زمان‌بندی‌شده (AWS EventBridge)

  • مدیریت پشته ابری (AWS CloudFormation)

  • ذخیره سازی اشیاء در ابر (AWS S3)

  • اعلان‌های ایمیل (AWS SES)

  • Middleware

  • احراز هویت و مجوز (مجوز لامبدا)

  • اعتبار سنجی داده ها و مدیریت خطا

  • ... خیلی بیشتر

علاوه بر آن، با برخی از محبوب‌ترین و مفیدترین خدمات در پلتفرم AWS تجربه عملی خواهید داشت. تقاضا برای کارشناسان AWS به طور مداوم در حال افزایش است، زیرا AWS بیشترین سهم را در بین تمام ارائه دهندگان ابری دارد.

اگر شما یک علاقه‌مند یا توسعه‌دهنده حرفه‌ای هستید که دانش اولیه توسعه Back-end را دارید و می‌خواهید در معماری بدون سرور یا Microservices غوطه ور شوید، این دوره برای شما مناسب است. پس زمینه اصلی JavasScript/Node.js توصیه می شود، اما اجباری نیست.

امروز به من بپیوندید تا یکی از داغ ترین مهارت های سال 2020 را بیاموزید.


سرفصل ها و درس ها

معرفی دوره Course Introduction

  • بررسی اجمالی پروژه Project Overview

  • خوش آمدی! از Vision من حمایت کنید Welcome! Support My Vision

  • معماری بدون سرور به طور خلاصه Serverless Architecture in a Nutshell

  • مقدمه ای بر فریم ورک بدون سرور Introduction to Serverless Framework

  • موارد استفاده بدون سرور در دنیای واقعی Real-world Serverless Use Cases

  • مقدمه ای بر معماری میکروسرویس ها Introduction to Microservices Architecture

  • AWS Free Tier AWS Free Tier

الزامات و پیش نیازها Requirements and Prerequisites

  • نصب Node.js و NPM Installing Node.js and NPM

  • نصب AWS CLI Installing the AWS CLI

  • نصب CLI Framework بدون سرور Installing the Serverless Framework CLI

  • پیکربندی AWS CLI + IAM Configuring the AWS CLI + IAM

  • (اختیاری) بودجه و هشدارهای AWS (Optional) AWS Budgets and Alerts

  • راه اندازی پستچی من My Postman Setup

سرویس حراج: قسمت 1 Auction Service: Part 1

  • بیایید وصل شویم! Let's Connect!

  • ایجاد یک پروژه فریم ورک بدون سرور Creating a Serverless Framework Project

  • آناتومی یک پروژه بدون سرور The Anatomy of a Serverless Project

  • نکته: افزونه VSCode IDE بدون سرور TIP: Serverless IDE VSCode Plugin

  • استقرار برنامه ما برای اولین بار Deploying Our Application for the First Time

  • (نکته) حذف پشته (Tip) Stack Removal

  • ایجاد حراج (قسمت اول) Creating an Auction (Part 1)

  • ایجاد حراج (قسمت دوم) Creating an Auction (Part 2)

  • توجه: مقدمه ای بر DynamoDB NOTE: Introduction to DynamoDB

  • مقدمه ای بر DynamoDB Introduction to DynamoDB

  • ایجاد جدول DynamoDB ما (IaaC) Creating our DynamoDB Table (IaaC)

  • استفاده از DynamoDB DocumentClient برای درج یک مزایده Using the DynamoDB DocumentClient to Insert an Auction

  • تعریف بیانیه های نقش IAM (مجوزها) Defining IAM Role Statements (Permissions)

  • بهینه سازی serverless.yml (بخش 1): نقش ها و بیانیه های IAM Optimising serverless.yml (Part 1): Roles and IAM Statements

  • بهینه سازی serverless.yml (بخش 2): توابع ذاتی و متغیرهای سفارشی Optimising serverless.yml (Part 2): Intrinsic Functions and Custom Variables

  • آفلاین بدون سرور - آیا ارزشش را دارد؟ Serverless Offline - Is It Worth It?

خدمات مزایده: قسمت 2 (عملیات CRUD) Auctions Service: Part 2 (CRUD Operations)

  • مقدمه ای بر Middy و Middleware Introduction to Middy and Middleware

  • عملیات CRUD: مزایده ها را دریافت کنید CRUD Operation: Get Auctions

  • عملیات CRUD: حراج را با شناسه دریافت کنید CRUD Operation: Get Auction by ID

  • ایجاد یک میان افزار مشترک Creating a Common Middleware

  • عملیات CRUD: ارائه پیشنهاد CRUD Operation: Placing a Bid

  • اعتبار سنجی: ارائه پیشنهاد Validation: Placing a Bid

خدمات حراج: قسمت 3 (حراج در حال پردازش) Auction Service: Part 3 (Processing Auctions)

  • استفاده از رویدادهای برنامه ریزی شده برای پردازش حراج های ما Using Scheduled Events to Process Our Auctions

  • ایجاد یک فهرست ثانویه جهانی (وضعیت، پایان در) Creating a Global Secondary Index (status, endingAt)

  • شناسایی مزایده های پایان یافته Identifying Ended Auctions

  • مزایده های اختتامیه Closing Auctions

  • اعتبار سنجی: مناقصه در مزایده های بسته Validation: Bidding on Closed Auctions

  • (چالش) گرفتن مزایده - فیلتر بر اساس وضعیت (Challenge) Getting Auctions - Filter by Status

  • مهم: اعتبارسنجی طرحواره IMPORTANT: Schema Validation

  • اعتبارسنجی طرحواره JSON - وضعیت مزایده را دریافت کنید JSON Schema Validation - Get Auctions Status

  • (اختیاری) پیام های خطای تفصیلی (Optional) Detailed Error Messages

  • (چالش) اعتبار سنجی طرح حراج را ایجاد کنید (Challenge) Create Auction Schema Validation

  • (چالش) اعتبار طرح پیشنهادی مکان (Challenge) Place Bid Schema Validation

سرویس احراز هویت Auth Service

  • بخش مقدمه Section Introduction

  • مقدمه ای بر Auth0 Introduction to Auth0

  • ایجاد یک برنامه Auth0 Creating an Auth0 Application

  • دریافت نشانه های تست Getting Test Tokens

  • استقرار سرویس Auth Deploying Auth Service

  • حفاظت از نقاط پایانی خدمات حراج Protecting Auction Service Endpoints

  • تعیین هویت فروشنده Specifying Seller Identity

  • تعیین هویت مناقصه گزار (+ اعتبارسنجی) Specifying Bidder Identity (+Validation)

سرویس اطلاع رسانی Notification Service

  • راه اندازی سرویس اطلاع رسانی Notification Service Setup

  • یادآوری: Linting غیر فعال است Reminder: Linting Disabled

  • تأیید آدرس ایمیل (AWS SES) Verify Email Address (AWS SES)

  • تعریف تابع sendMail Lambda Defining the sendMail Lambda Function

  • ارسال اولین ایمیل (تست) ما Sending Our First (Test) Email

  • مقدمه ای بر SQS و صف های پیام Introduction to SQS and Message Queues

  • تهیه صف پیام AWS SQS (MailQueue) Provisioning AWS SQS Message Queue (MailQueue)

  • ارسال دستی پیام های SQS Manually Sending SQS Messages

  • صادر کردن متغیرهای MailQueue (CloudFormation) Exporting MailQueue Variables (CloudFormation)

  • واردات خروجی در سرویس مزایده Importing Outputs in Auction Service

  • اطلاع به مناقصه گزار و فروشنده Notifying Bidder and Seller

  • (چالش) رسیدگی به پرونده بدون پیشنهاد (Challenge) Handling No Bids Case

  • (اختیاری) Uncommenting EventBridge Trigger (Optional) Uncommenting EventBridge Trigger

عکس حراج (Amazon S3) Auction Picture (Amazon S3)

  • راه اندازی S3 Bucket and Lambda Function Setting up an S3 Bucket and Lambda Function

  • (اختیاری) Amazon S3 Picture Expiry (Optional) Amazon S3 Picture Expiry

  • آپلود عکس در S3 Uploading Picture to S3

  • رفع سریع خطاها Quick Error Handling Fix

  • تنظیم URL تصویر در DynamoDB Setting Picture URL in DynamoDB

  • (چالش) اعتبار مزایده مالکیت (Challenge) Validate Auction Ownership

  • (چالش) اعتبار درخواست بدنه (base64) (Challenge) Validate Request Body (base64)

  • حرکت رو به جلو و محتوای آینده Moving Forward & Future Content

(پاداش) برنامه Front-end (Bonus) Front-end Application

  • نسخه نمایشی جلویی Front-end Demo

  • فعال کردن CORS در سرویس مزایده Enabling CORS on Auction Service

  • راه اندازی Auctions Front-end Setting up the Auctions Front-end

نمایش نظرات

آموزش Bootcamp چارچوب بدون سرور: Node.js، AWS و Microservices
جزییات دوره
5.5 hours
78
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
63,402
4.5 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Ariel Weinberger Ariel Weinberger

مدیر مهندسی ، Mentor من یک مهندس نرم افزار پرشور و با سالها تجربه در زمینه توسعه جلو و عقب هستم. در حال حاضر ، من به عنوان مدیر مهندسی نرم افزار در OneFit کار می کنم. پیش از این ، مهندس ارشد نرم افزار در DAZN ، خدمات را در مقیاس گسترده به ده ها میلیون کاربر همزمان در سراسر جهان ارائه می داد. تجربه گذشته کار در بخش فناوری مالی (FinTech) برای Payconiq ، جایی که من مجبور شدم سیستم های کلیدی را برای عملکرد روان راه حل پرداخت BeNeLux توسعه و نگهداری کنم ، و همزمان پرداخت های همزمان زیادی را انجام دهم. من همچنین به عنوان مهندس در صنایع دفاعی کار می کردم ، عمدتا در مورد سیستم های هوایی VISINT (Visual Intelligence) سوار بر هواپیما. جدا از آن ، من همیشه طرفدار تدریس و راهنمایی بوده ام. من راهنمای بی شماری در مهندسی نرم افزار - راهنمایی ، مربیگری و تنظیم آنها برای موفقیت به عنوان مهندس بوده ام.