این دوره از یک مخزن زنده github aws-microservices می آید که از انجمن با بیش از 200 ستاره و بیش از 100 فورک تأیید شده است.
در این دوره، ما میکروسرویسهای AWS Event-driven Serverless را با استفاده از
یاد خواهیم گرفت.AWS Lambda،
AWS DynamoDB،
درگاه AWS API،
AWS EventBridge،
AWS SQS که مخفف عبارت Simple Queue Service است،
AWS CDK مخفف Cloud Development Kit for IaC - Infrastructure as Code tool و
AWS CloudWatch برای نظارت.
این دوره 100% عملی خواهد بود و شما در حال توسعه یک برنامه کاربردی در دنیای واقعی خواهید بود که شامل:
REST API و نقاط پایانی CRUD با استفاده از ( AWS Lambda، API Gateway )
ماندگاری داده با استفاده از (AWS DynamoDB )
میکروسرویس ها را با رویدادها با استفاده از ( AWS EventBridge ) جدا کنید
صف پیام برای ارتباطات متقابل با استفاده از ( AWS SQS )
توسعه پشته ابر با IaC با استفاده از ( AWS CloudFormation CDK )
در پایان دوره، یاد خواهید گرفت که چگونه برنامه های کاربردی بدون سرور قابل اعتماد و مقیاس پذیر را با پیروی از معماری میکروسرویس توسعه دهید. ما میکروسرویسهای رویداد محور را با سرویسهای بدون سرور AWS توسعه خواهیم داد که طبیعتاً با قدرت ابر در دسترس و مقیاسپذیری بالا ارائه میشود. البته ما هنگام توسعه برنامه میکروسرویس مبتنی بر رویداد تجارت الکترونیکی، از الگوهای طراحی بدون سرور و بهترین روشها پیروی میکنیم.
چند سرویس میکرو وجود دارد که ماژولهای تجارت الکترونیک را روی میکروسرویسهای محصول، سبد خرید و سفارش پیادهسازی میکنند. ما از سرویس AWS Lambda به عنوان یک میکروسرویس استفاده خواهیم کرد و از قدرت توابع لامبدا استفاده خواهیم کرد. و این پایگاه داده microservices پایگاه داده NoSQL AWS DynamoDB را ذخیره می کند.
و همچنین الگوهای ارتباطی و بهترین شیوهها را هنگام طراحی ارتباطات میکروسرویس بدون سرور برای ارتباطات همزمان و ناهمزمان با استفاده از AWS API Gateway، AWS EventBridge بهعنوان Eventbus و AWS SQS بهعنوان یک سرویس صف دنبال کردهایم. این بدان معناست که ما معماری خود را بر اساس اتصالات ناهمزمان طراحی می کنیم که به ما کاربرد بسیار انعطاف پذیر و انعطاف پذیرتری می دهد.
از
استفاده خواهیم کردAWS API Gateway -for- Restful API - توسعه محور و منابع رویداد همزمان
AWS EventBridge -for- Event - ارتباط ناهمزمان بین میکروسرویسها
AWS SQS -for- جداسازی میکروسرویسها و پردازش رویدادها به صورت ناهمزمان با استفاده از صفها
این دوره یک معماری میکروسرویس گرا را با دنیای بدون سرور AWS با استفاده از الگوهای رویداد محور و بهترین شیوه ها پیشنهاد می کند. بنابراین پروژه برنامه کاربردی تجارت الکترونیکی خواهد بود که کاملاً اجزای بدون سرور خواهد بود.
اجازه دهید سعی کنم اجزای بدون سرور را یکی یکی معرفی کنم؛
دروازه Api
این نقطه ورود میکروسرویسهای ما است.
API Gateway توسعه آرامش بخش مبتنی بر API و منابع رویداد همزمان را فراهم می کند.
فرمانهای همزمان درخواست/پاسخ هستند.
API Gateway یک منبع رویداد همزمان است و یک پروکسی API بدون سرور برای AWS Lambda ارائه میکند.
درگاه API به درخواست CRUD به میکروسرویسهای داخلی هدایت میشود.
میکروسرویس های لامبدا محصولی که انجام می دهد؛
عملیات CRUD با استفاده از جدول DynamoDB روی دروازه AWS API
این مورد، عملیات جدول محصول را به طور کامل بدون سرور در معماری میکروسرویس ها پوشش می دهد.
درخواستهای همزمان توسط AWS API Gateway و درخواستهای مسیریابی به Microservices Product Lambda که عملیات CRUD را انجام میدهند، مدیریت میشوند.
ما توابع Lambda را با استفاده از AWS SDK برای تعامل با سایر منابع AWS خواهیم نوشت، به عنوان مثال در مورد محصول، با DynamoDB بدون سرور AWS تعامل خواهیم داشت تا همه عملیات خام را انجام دهیم.
میکروسرویس سبد لامبدا که انجام می دهد؛
افزودن-حذف عملیات سبد همزمان با استفاده از AWS API Gateway و DynamoDB
دوباره درخواستهای همزمان توسط AWS API Gateway مدیریت میشوند و درخواستهای مسیریابی به Basket Lambda Microservices که عملیات CRUD را انجام میدهند.
ما توابع Lambda را با استفاده از AWS SDK برای تعامل با سایر منابع AWS خواهیم نوشت. به عنوان مثال در مورد Basket ما با DynamoDB بدون سرور AWS برای انجام همه عملیات خام تعامل داریم.
اما همچنین،
میکروسرویس سبد به موارد استفاده مبتنی بر رویداد که همان سبد پرداخت است، راهاندازی میکند.
هنگام تسویهحساب، این رویداد در Eventbus بدون سرور که AWS EventBridge است، منتشر و ایجاد میکند.
بنابراین این ارتباط ناهمزمان توسط Basket Lambda Microservice و AWS EventBridge برقرار میشود و با سفارش میکروسرویسها از طریق AWS SQS مصرف میشود.
پل رویداد AWS
بنابراین ارتباط ناهمزمان توسط سرویس Eventbus سرور AWS که AWS EventBridge است برقرار میشود.
ما قوانین و تعاریف هدف را برای AWS EventBridge از میکروسرویس های Basket Lambda ایجاد خواهیم کرد.
این بدان معناست که ما هنگام انتشار پیام پرداخت به AWS EventBridge با استفاده از AWS SDK برای اهداف توسعه، Basket Lambda Microservices را توسعه خواهیم داد.
AWS SQS و سفارش میکروسرویس های Lambda
بنابراین پس از انتشار رویداد پرداخت در EventBridge، این رویداد با سفارش بخشی مصرف میشود.
EventBridge برای به دست آوردن قدرت صف AWS به رویداد به AWS SQS ارسال می کند.
بعد از آن سفارش میکروسرویس لامبدا، این رویداد را با نظرسنجی مصرف خواهد کرد.
این بدان معناست که ما از نوع ارتباط نگاشت منبع رویداد در اینجا هنگام مصرف رویدادها، سفارش میکروسرویسهای لامبدا برای ارسال درخواست نظرسنجی و دریافت رویداد از صف AWS استفاده میکنیم.
بعد از مصرف رویداد از صف AWS، Microservices Ordering lambda رویداد را با ایجاد رکورد سفارش در جدول DynamoDB خود پردازش میکند.
سفارش میکروسرویسهای لامبدا همه این عملیات را با توسعه عملکردهای لامبدا با استفاده از AWS SDK انجام میدهند.
ما 3 نوع ارتباط داریم.
ارتباط همزمان با AWS API Gateway برای مسیریابی درخواست از برنامه های مشتری به میکروسرویس های پایین دست
ارتباط ناهمزمان با گذرگاه رویداد بدون سرور AWS که EventBridge برای استفاده از الگوهای ارتباط ناهمزمان مبتنی بر رویداد است.
و در نهایت، هنگام بررسی سوابق صف از سرویسهای لامبدا به AWS SQS -Simple Queue Service برای Decouple Microservice و پردازش رویدادها به صورت ناهمزمان، ارتباط نقشهبرداری منبع رویداد داریم.
در طول دوره، ما این انواع ارتباط Microservice را با فراخوانی های Lambda دنبال می کنیم و بخش های خود را با پیروی از این فلش ها توسعه می دهیم.
پشته های بدون سرور IaC با AWS CDK - کیت توسعه ابر
در هنگام کدنویسی زیرساخت از بهترین شیوه های Devops پیروی می کند. در کل پروژه، ما زیرساختها را به عنوان پشتههای بدون سرور با استفاده از AWS CDK - Cloud Development Kit توسعه خواهیم داد.
ما از AWS CDK برای توسعههای پشتههای بدون سرور IaC استفاده میکنیم که همه سرویسها را گام به گام با هم توسعه و ارائه میکنیم.
AWS Developer and AWS Solution Architecture Jobs
این دوره مشاغل واقعی توسعه دهنده AWS و معماری راه حل AWS را برای شما آماده می کند، که حقوق 3 رقمی را به شما ارائه می دهد.
زیرا ما قصد داریم یک برنامه کاربردی بدون سرور در دنیای واقعی ایجاد کنیم که قبلاً توسط بسیاری از شرکتها در جهان استفاده و توسعه یافته است.
گواهینامه AWS خود را با روش عملی آماده کنید
معاون برنامهنویس معتبر AWS
دستیار معمار راه حل های تایید شده AWS
همه موضوعات را به خاطر بسپارید، احساس کنید و به صورت دستی توسعه دهید، دستان خود را کثیف کنید به این ترتیب می توانید به کارهای AWS هدف خود برسید. این دوره به شما کمک می کند تا گواهینامه های AWS Developer and Solutions Architect Associate را به صورت تئوری و عمدتاً عملی با توسعه برنامه های کاربردی تجارت الکترونیک بدون سرور تهیه کنید.
بدون سرور AWS + اتوماسیون CDK + الگوهای یکپارچه سازی = AWSome!
این مانیفست دوره ما خواهد بود. ما این مانیفست را در هر مکان از دوره خود و برنامه تجارت الکترونیک بدون سرور دنبال خواهیم کرد.
الگوهای یکپارچهسازی که در طول دوره زمانی که برنامه تجارت الکترونیک بدون سرور خود را توسعه میدهیم، از الگوهای تغییر صف، انتشار-اشتراک و طراحی Fan-out پیروی میکنیم.
در پایان این دوره، نحوه طراحی و توسعه میکروسرویسهای رویداد محور AWS با استفاده از الگوهای بدون سرور و بهترین شیوهها را خواهید آموخت.
این دوره 100% عملی خواهد بود و ما همه کدهای زیرساخت و میکروسرویس را با هم و گام به گام توسعه خواهیم داد.
امیدوارم در این سفر به من بپیوندید و این پروژه را با من توسعه دهید.
معمار نرم افزار | میکروسرویس | AWS Community Builder
نمایش نظرات