یک توسعهدهنده بیش از 200 ساعت صرف ساخت یک کیت شروعکننده میکروسرویسهای DDD کرده است که شامل سه میکروسرویس، الگوهای DDD واقعی، CQRS، زیرساخت به عنوان کد و مستنداتی است که دلیل نحوه عملکرد موارد را توضیح میدهد. این کیت برای کاهش زمان صرف شده برای پیکربندی اولیه در پروژههای جدید میکروسرویس طراحی شده است.
این کیت از معماری Clean Architecture با چهار لایه شامل Domain، Application، Infrastructure و API/Presentation استفاده میکند و از طریق مراجع پروژه، قانون وابستگی را اعمال میکند. لایه Domain شامل موجودیتها، Value Objects، رویدادهای Domain و رابطهای Repository است، در حالی که لایه Application شامل Commands، Queries، Handlers، Validators و DTOs میباشد.
زیرساخت از EF Core، Service Bus و APIهای خارجی استفاده میکند و لایه API شامل Controllers، Middleware و پیکربندی DI است. میکروسرویسها از طریق رویدادهای Domain که از طریق Azure Service Bus (یا RabbitMQ برای توسعه محلی) منتشر میشوند، با یکدیگر ارتباط برقرار میکنند و از پایگاه دادههای مشترک و جفتشدگی زمانی جلوگیری میکنند.
معماری این کیت شامل سه bounded context برای Order، Inventory و Notification است که هر کدام دارای پایگاه داده و استقرار قابل استقرار خود هستند. این کیت در Gumroad در دسترس است و هدف آن ارائه یک نقطه شروع قوی برای توسعهدهندگان .NET است که قصد دارند از الگوهای DDD در پروژههای میکروسرویس خود استفاده کنند.
مشاهده مطلب اصلی