در این جلسه به تحلیل سرویس نوتفیکیشن پرداختیم و rabbitmq رو برای بروکر راه اندازی کردیم از کاربرد دیزاین پترن outbox گفتیم و مسیر پیش رو تا اتمام دوره رو برسی کردیم
YARP (Yet Another Reverse Proxy) و Ocelot دو ابزار محبوب در دنیای توسعه نرمافزار و به خصوص میکروسرویسها هستند. هر دو برای مدیریت درخواستها در معماری میکروسرویسها و همچنین API Gateway ها استفاده میشوند، اما تفاوتهایی در ویژگیها و کاربردهای آنها وجود دارد که میتوان به عنوان مزایای YARP نسبت به Ocelot در نظر گرفت: 1. عملکرد (Performance) • YARP: بر پایهی کتابخانههای HTTP/2 و Kestrel در داتنت ساخته شده است و عملکرد بسیار بالایی دارد. همچنین بهینهسازیهایی در آن انجام شده که باعث کاهش تأخیر (Latency) و افزایش سرعت میشود. • Ocelot: عملکرد مناسبی دارد، اما به دلیل معماری آن و عدم استفاده مستقیم از قابلیتهای پیشرفتهی Kestrel، از نظر عملکرد به YARP نمیرسد. 2. انعطافپذیری (Flexibility) • YARP: به گونهای طراحی شده است که توسعهدهندگان میتوانند آن را کاملاً شخصیسازی کنند. با استفاده از middlewareهای ASP.NET Core، میتوانید رفتار YARP را به صورت کامل تغییر دهید. • Ocelot: انعطافپذیری کمتری نسبت به YARP دارد و بیشتر به صورت “پیکربندی محور” عمل میکند، در حالی که YARP هم برای پیکربندی و هم برای کدنویسی طراحی شده است. 3. پشتیبانی از ویژگیهای پیشرفته • YARP: از قابلیتهایی مانند HTTP/2، WebSocket، gRPC، و TLS Termination به صورت پیشفرض پشتیبانی میکند. • Ocelot: برخی از این ویژگیها، مانند gRPC، پشتیبانی محدودی دارند یا نیازمند تنظیمات بیشتری هستند. 4. همگام بودن با معماری مدرن داتنت • YARP: توسط تیم رسمی مایکروسافت توسعه یافته و به صورت خاص برای داتنت 5 به بعد طراحی شده است. این ابزار با تمام قابلیتهای جدید ASP.NET Core کاملاً هماهنگ است. • Ocelot: یک پروژه متنباز است که توسط جامعه مدیریت میشود و ممکن است به اندازه YARP با آخرین تغییرات داتنت هماهنگ نباشد. 5. پشتیبانی از توسعهدهنده و جامعه • YARP: به دلیل پشتیبانی مستقیم مایکروسافت، مستندات کاملتر و جامعهی توسعهدهندگان گستردهتری دارد. • Ocelot: جامعه خوبی دارد، اما پشتیبانی رسمی مانند YARP ندارد. 6. سادگی در پیادهسازی و یادگیری • YARP: به لطف طراحی انعطافپذیر و هماهنگی با ASP.NET Core، یادگیری و استفاده از آن برای توسعهدهندگان داتنت سادهتر است. • Ocelot: برای پروژههایی با نیازهای سادهتر مناسبتر است، اما در پروژههای پیچیده، تنظیمات آن ممکن است دشوارتر شود. نتیجهگیری اگر به دنبال ابزار قدرتمند، انعطافپذیر و با عملکرد بالا هستید که به صورت کامل با معماری مدرن داتنت هماهنگ باشد، YARP انتخاب بهتری است. اما اگر به دنبال یک راهکار ساده و سریع برای API Gateway هستید و پیچیدگی خاصی در نیازهای شما وجود ندارد، Ocelot نیز میتواند گزینهای مناسب باشد.
سلام، ممنون جناب رضائیان
Elastic search
رو هم اگر شد آخرش بیارید، بحث بسیار جذابیه
ممنون 🏵️
سلام و درود بر شما
حتما به احترام حرف شما میارم ❤️
این از بزرگواریتونه 💎
@@AkbarRezaeyanghane
سلام و تشکر بسیار از جنابعالی بابت بیان شیوا و قابل درک مفاهیم،آیا مزیت خاصی yarp نسبت به ocelot دارد؟
سلام و ممنون از شما ❤️
YARP (Yet Another Reverse Proxy) و Ocelot دو ابزار محبوب در دنیای توسعه نرمافزار و به خصوص میکروسرویسها هستند. هر دو برای مدیریت درخواستها در معماری میکروسرویسها و همچنین API Gateway ها استفاده میشوند، اما تفاوتهایی در ویژگیها و کاربردهای آنها وجود دارد که میتوان به عنوان مزایای YARP نسبت به Ocelot در نظر گرفت:
1. عملکرد (Performance)
• YARP: بر پایهی کتابخانههای HTTP/2 و Kestrel در داتنت ساخته شده است و عملکرد بسیار بالایی دارد. همچنین بهینهسازیهایی در آن انجام شده که باعث کاهش تأخیر (Latency) و افزایش سرعت میشود.
• Ocelot: عملکرد مناسبی دارد، اما به دلیل معماری آن و عدم استفاده مستقیم از قابلیتهای پیشرفتهی Kestrel، از نظر عملکرد به YARP نمیرسد.
2. انعطافپذیری (Flexibility)
• YARP: به گونهای طراحی شده است که توسعهدهندگان میتوانند آن را کاملاً شخصیسازی کنند. با استفاده از middlewareهای ASP.NET Core، میتوانید رفتار YARP را به صورت کامل تغییر دهید.
• Ocelot: انعطافپذیری کمتری نسبت به YARP دارد و بیشتر به صورت “پیکربندی محور” عمل میکند، در حالی که YARP هم برای پیکربندی و هم برای کدنویسی طراحی شده است.
3. پشتیبانی از ویژگیهای پیشرفته
• YARP: از قابلیتهایی مانند HTTP/2، WebSocket، gRPC، و TLS Termination به صورت پیشفرض پشتیبانی میکند.
• Ocelot: برخی از این ویژگیها، مانند gRPC، پشتیبانی محدودی دارند یا نیازمند تنظیمات بیشتری هستند.
4. همگام بودن با معماری مدرن داتنت
• YARP: توسط تیم رسمی مایکروسافت توسعه یافته و به صورت خاص برای داتنت 5 به بعد طراحی شده است. این ابزار با تمام قابلیتهای جدید ASP.NET Core کاملاً هماهنگ است.
• Ocelot: یک پروژه متنباز است که توسط جامعه مدیریت میشود و ممکن است به اندازه YARP با آخرین تغییرات داتنت هماهنگ نباشد.
5. پشتیبانی از توسعهدهنده و جامعه
• YARP: به دلیل پشتیبانی مستقیم مایکروسافت، مستندات کاملتر و جامعهی توسعهدهندگان گستردهتری دارد.
• Ocelot: جامعه خوبی دارد، اما پشتیبانی رسمی مانند YARP ندارد.
6. سادگی در پیادهسازی و یادگیری
• YARP: به لطف طراحی انعطافپذیر و هماهنگی با ASP.NET Core، یادگیری و استفاده از آن برای توسعهدهندگان داتنت سادهتر است.
• Ocelot: برای پروژههایی با نیازهای سادهتر مناسبتر است، اما در پروژههای پیچیده، تنظیمات آن ممکن است دشوارتر شود.
نتیجهگیری
اگر به دنبال ابزار قدرتمند، انعطافپذیر و با عملکرد بالا هستید که به صورت کامل با معماری مدرن داتنت هماهنگ باشد، YARP انتخاب بهتری است. اما اگر به دنبال یک راهکار ساده و سریع برای API Gateway هستید و پیچیدگی خاصی در نیازهای شما وجود ندارد، Ocelot نیز میتواند گزینهای مناسب باشد.
تشکر عالی بود، آقای مهندس اگر به هر دلیل سرور ریستارت بشه، در ربیت تمامی پیامها پاک میشوند؟
سلام و درود به شما
سپاس از شما
با تنظیم پایداری صف و پیام میتونیم پیامها رو نگه داریم
درود و سپاس از شما استاد عزیز بابت مطالب بسیار خوب و کاربردی... عذر میخوام من جلسه یازدهم رو نمیتونم پیدا کنم!! حذف شده یا اینکه آپلود نکردید؟
سلام و درود خدمت شما و سپاس ا❤️
m.th-cam.com/video/yXsS7zAtOYc/w-d-xo.html
مهندس خسته نباشید saga رو فراموش نکنید
سلام چشم حتما اونو میارم ❤️