میکروسرویسهای NestJS با RabbitMQ ،API Gateway و Prisma
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- ساخت میکروسرویسهای مقیاسپذیر با NestJS – یاد بگیرید چگونه با استفاده از NestJS، TypeScript و Docker، میکروسرویسهای آماده برای تولید را معماری و توسعه دهید.
- تسلط بر ارتباط بینسرویسی – پیادهسازی ارتباط مبتنی بر TCP، صفهای پیام RabbitMQ و API Gateway برای فعالسازی جریان داده یکپارچه بین میکروسرویسها
- ایمنسازی میکروسرویسها با احراز هویت و مجوزدهی – پیادهسازی احراز هویت مبتنی بر JWT، گاردهای NestJS و استراتژیهای مجوزدهی برای محافظت از APIها.
- یاد بگیرید چگونه در NestJS یک API Gateway بسازید.
پیشنیازهای دوره
- دانش اولیه از JavaScript/TypeScript – داشتن کمی تجربه با JavaScript یا TypeScript به شما کمک میکند تا مطالب را به راحتی دنبال کنید.
- آشنایی با Node.js – درک اصول Node.js توصیه میشود اما اجباری نیست.
- درک اولیه از پایگاههای داده – داشتن کمی تجربه با MongoDB یا PostgreSQL مفید خواهد بود، اما تمام مفاهیم توضیح داده خواهند شد.
- اشتیاق به یادگیری – هیچ تجربه قبلی در زمینه میکروسرویسها نیاز نیست! این دوره طراحی شده است تا شما را از سطح مبتدی به پیشرفته در میکروسرویسهای NestJS برساند.
توضیحات دوره
NestJS یکی از بهترین فریمورکها برای توسعه بکاند مدرن است. این فریمورک بهترین ویژگیهای Angular ،Express و TypeScript را ترکیب میکند و آن را به انتخابی ایدهآل برای ساخت اپلیکیشن های مقیاسپذیر، قابل نگهداری و آماده برای تولید تبدیل میکند.
آیا در ساخت میکروسرویسهای مقیاسپذیر و آماده تولید با NestJS با مشکل مواجه هستید؟ آیا میخواهید به RabbitMQ ،MongoDB Postgres Docker، Prisma و API Gateways مسلط شوید و همزمان بهترین روشهای دنیای واقعی را بیاموزید؟ این دوره برای شماست!
در این دوره جامع میکروسرویسهای NestJS، شما یاد خواهید گرفت که چگونه یک معماری میکروسرویس کاملاً کاربردی را از ابتدا بسازید. شما به ارتباط بینسرویسی، احراز هویت، ادغام پایگاههای داده و استقرار مسلط خواهید شد، همه اینها با پروژههای عملی و تمرینات کدنویسی کاربردی است.
آنچه خواهید آموخت:
راهاندازی یک پروژه میکروسرویس NestJS مقیاسپذیر از ابتدا
- پیادهسازی ارتباط مبتنی بر TCP ،RabbitMQ و API Gateway
- ایمنسازی میکروسرویسها با احراز هویت JWT و NestJS Guards
- کار با MongoDB ،PostgreSQL ،Prisma و TypeORM
- کانتینرایز کردن میکروسرویسها با Docker و Docker Compose
چرا این دوره را انتخاب کنید؟
- پروژههای عملی – کدنویسی در کنار برنامههای دنیای واقعی
- توضیحات گامبهگام – بدون نیاز به تجربه قبلی در میکروسرویسها
- بروزرسانی شده برای 2024 – پوشش جدیدترین الگوهای NestJS و میکروسرویسها
اگر آمادهاید تا به میکروسرویسهای NestJS مسلط شوید و به یک توسعهدهنده بکاند آمادهبهکار تبدیل شوید، همین حالا در این دوره شرکت کنید و کدنویسی را شروع کنید!
میکروسرویسهای NestJS مزایای متعددی را ارائه میدهند، بهویژه برای ساخت اپلیکیشن های بکاند مقیاسپذیر و قابل نگهداری است.
1. مقیاسپذیری
- میکروسرویسها امکان مقیاسدهی مستقل سرویسهای مختلف را بر اساس تقاضا فراهم میکنند.
- NestJS از سیستمهای توزیعشده پشتیبانی میکند که مقیاسدهی افقی را امکانپذیر میسازد.
2. معماری جداشده
- هر میکروسرویس مستقل است که تغییر، استقرار و نگهداری آن را آسانتر میکند.
- سرویسها میتوانند بهصورت جداگانه توسعه، تست و استقرار یابند.
3. پشتیبانی داخلی از لایه انتقال
- پشتیبانی از لایههای انتقال مختلف مانند Redis ،RabbitMQ، NATS ،Kafka ،MQTT ،gRPC و موارد دیگر
- فعالسازی ارتباط رویداد محور که عملکرد و انعطافپذیری را بهبود میبخشد.
4. عملکرد بالا
- مدیریت کارآمد درخواستها از طریق ارتباط ناهمزمان
- کاهش بار روی سرویسهای فردی با توزیع بار کاری
5. تحمل خطای بهبودیافته
- اگر یک میکروسرویس از کار بیفتد، سایر سرویسها به کار خود ادامه میدهند و تأثیر بر کل سیستم کاهش مییابد.
- پشتیبانی از مدارشکنها و تلاشهای مجدد برای مدیریت مؤثر خطاها
6. مستقل از تکنولوژی
- هر میکروسرویس میتواند از تکنولوژیها یا زبانهای برنامهنویسی مختلف استفاده کند.
- NestJS امکان ادغام یکپارچه با APIها و سرویسهای خارجی را فراهم میکند.
7. بهرهوری تیمی بهتر
- تیمهای مختلف میتوانند بدون وابستگیهای دستوپاگیر روی میکروسرویسهای جداگانه کار کنند.
- چرخههای توسعه سریعتر به دلیل معماری ماژولار
8. قابلیت نگهداری ارتقایافته
- تفکیک واضح دغدغهها اشکالزدایی و بروزرسانی کد را آسانتر میکند.
- سرویسهای کوچکتر و خوشتعریف بدهی فنی را کاهش میدهند.
9. امنیت و ایزولاسیون
- هر سرویس مرزهای امنیتی خاص خود را دارد که تأثیر آسیبپذیریها را کاهش میدهد.
- امکان پیادهسازی مدلهای امنیتی اعتماد صفر در سطح سرویس را فراهم میکند.
10. پشتیبانی از طراحی دامنه محور (DDD)
- به ساختاردهی سرویسها بر اساس منطق تجاری و نیازمندیهای دامنه کمک میکند.
- معماری تمیز و قابل نگهداری را تشویق میکند.
این دوره برای چه کسانی مناسب است؟
- این دوره برای توسعهدهندگان بکاند و مهندسان Node.js طراحی شده است که میخواهند با استفاده از NestJS میکروسرویسهای مقیاسپذیر و آماده تولید بسازند.
- توسعهدهندگان Node.js و JavaScript – اگر تجربه کار با Node.js را دارید و میخواهید به سمت معماری میکروسرویس حرکت کنید، این دوره شما را گامبهگام راهنمایی خواهد کرد.
- مهندسان بکاند – توسعهدهندگانی که میخواهند برای ساخت سیستمهای توزیعشده کارآمد به NestJS ،RabbitMQ ،API Gateway و Prisma مسلط شوند.
- اگر در حال آمادهسازی برای شغلی در توسعه بکاند هستید، این دوره مهارتها و رزومه شما را با پروژههای واقعی میکروسرویس تقویت خواهد کرد.
- اگر در مورد معماری میکروسرویس شنیدهاید اما هرگز فرصتی برای پیادهسازی آن نداشتهاید، این دوره تجربه عملی را فراهم میکند.
میکروسرویسهای NestJS با RabbitMQ ،API Gateway و Prisma
-
اپلیکیشن نمونه 01:50
-
راهاندازی پروژه میکروسرویسهای NestJS 09:01
-
نصب MongoDB 02:56
-
چرا Docker؟ 04:16
-
اجرای MongoDB در کانتینر Docker 06:00
-
اجرای MongoDB در Docker Compose 04:30
-
نصب پکیج NestJS Mongoose 05:30
-
پورت فورواردینگ MongoDB 04:44
-
راهاندازی ماژول 10:21
-
تعریف طرحواره بخش 01 01:10
-
تعریف طرحواره بخش 02 04:49
-
تعریف طرحواره بخش 03 00:35
-
اعتبارسنجی بدنه درخواست بخش 01 01:19
-
اعتبارسنجی بدنه درخواست بخش 02 01:22
-
اعتبارسنجی بدنه درخواست بخش 03 04:55
-
اعتبارسنجی بدنه درخواست بخش 04 03:37
-
ذخیره مختصات بخش 01 02:22
-
ذخیره مختصات بخش 02 06:18
-
ذخیره مختصات بخش 03 00:29
-
ذخیره مختصات بخش 04 01:48
-
دریافت داده از پایگاه داده 05:51
-
ارتباط مبتنی بر TCP 01:47
-
شبیهسازی متد Rider by ID 02:54
-
تعریف رویداد برای ارتباط بین میکروسرویسها 07:54
-
تعریف پارامتر ID 05:24
-
تست و رفع باگ بخش 01 02:35
-
تست و رفع باگ بخش 02 03:27
-
تست و رفع باگ بخش 03 01:36
-
تست و رفع باگ بخش 04 01:18
-
بهبود زمان بارگذاری مجدد اپلیکیشن NestJS 06:56
-
RabbitMQ چیست؟ 01:16
-
جریان RabbitMQ 02:17
-
نصب RabbitMQ با استفاده از Docker Compose 03:33
-
راهاندازی RabbitMQ در میکروسرویس 05:04
-
ارتباط بین میکروسرویسها با استفاده از RabbitMQ 15:52
-
معرفی ماژول 00:52
-
نصب Postgres با استفاده از Docker Compose 05:03
-
بازسازی ماژول اپلیکیشن 04:40
-
اتصال میکروسرویس به Postgres 02:37
-
ایجاد موجودیت در TypeORM 04:22
-
یافتن Rider با Id 04:34
-
اندپوینت API برای ایجاد Rider 03:51
-
تست ارتباط RabbitMQ با دیتابیس 06:13
-
API Gateway چیست؟ 04:41
-
چرا API Gateway؟ 01:55
-
بازسازی با حذف سرویسهای اوبر 01:14
-
ایجاد سرویس API Gateway 03:08
-
تعریف مسیرها برای میکروسرویس Rider در API Gateway 01:50
-
ارتباط با میکروسرویس Rider 03:33
-
ایجاد ارتباط داده 02:55
-
لاگ کردن ارتباط میکروسرویس 04:25
-
تست لاگ کردن ارتباط میکروسرویس 04:34
-
تست لاگ کردن ارتباط میکروسرویس بخش 02 04:21
-
رفع باگ 04:07
-
جریان احراز هویت 02:32
-
ایجاد میکروسرویس احراز هویت 04:05
-
نصب وابستگیهای مربوط به احراز هویت 02:03
-
تعریف مسیرها برای احراز هویت 00:53
-
ارتباط با میکروسرویس Auth با استفاده از API Gateway 03:52
-
تعریف مسیر ثبتنام در میکروسرویس Auth 02:35
-
تست ارتباط API Gateway و میکروسرویس Auth 04:24
-
راهاندازی Prisma 03:09
-
رشته اتصال Postgres 01:25
-
ایجاد مدل Prisma 01:13
-
راهاندازی Prisma Client 02:52
-
درک جریان Prisma 00:48
-
ثبتنام کاربر 07:23
-
تست ثبتنام کاربر 02:45
-
ورود کاربر 07:28
-
درک NestJS Guard 01:59
-
ایجاد NestJS Guard 02:35
-
رفع خطای Instanceof 05:04
-
تست مجدد مسیر ثبتنام 00:31
-
ایجاد Auth Guard 07:01
-
اعتبارسنجی توکن 03:57
-
تست Auth Guard 08:15
-
افزودن رابطه 05:41
-
رابطه UserId 06:33
-
اصلاح UserId 01:15
-
اعمال Auth Guard روی سایر مسیرهای خصوصی 02:40
مشخصات آموزش
میکروسرویسهای NestJS با RabbitMQ ،API Gateway و Prisma
- تاریخ به روز رسانی: 1404/10/04
- سطح دوره:همه سطوح
- تعداد درس:80
- مدت زمان :05:07:29
- حجم :2.66GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy