از Microservice به Outsourced Microservice و سرویسهای Domain-Agnostic
وسط جنگ، شروع کردم دورهی Event sourcing دیدن. دید خیلی بهتری بهش پیدا کردم و یاد گرفتم که چطوری بصورت استاندارد ازش استفاده کنم و پیاده سازیش کنم.
اما چیزی که برام واضح تر بود، این نبود که خب این رو الان کجا پیادهسازی کنم. این بود که الان که میدونم چیه، و چقدر پیچیدگی الکی میتونه استفاده کنه، کجاها سراغش نباید برم.
هرچی بیشتر یاد میگیرم به این مفهوم نزدیکتر میشم که ساده نگاهش کن، مگر اینکه برخلافش نیاز باشه.
یکی از چیزهایی که در سالهای اخیر خیلی سر و صدا کرد مایکروسرویس بود. مایکروسرویس واقعی، هزینه مالی و انسانی زیادی میبره. با گذشت زمان، به یک دید متفاوت رسیدم. درسته که کل سیستم رو مایکروسرویس دیدن الکی گنده هست و باید بررسی عمیقی برای انجام دادن یا ندادنش صورت بگیره. اما خیلی از سرویسها رو دیگه نیاز نیست خودمون توسعه بدیم. بهش که فکر میکردم کلمهی Outsourced Microservices مناسب بنظر میاد.
وقتی میتونیم سرویس احراز هویت رو با keycloak، سرویس سرچ رو با ElasticSearch، سرویس مدیریت فایل رو با Minio و نرم افزارهای مشابهش راه بندازیم، دیگه خیلی منطقی نیست که خودمون توسعه بدیم. اینجوری با یک سرویس مربوط به بیزنسمون، و چندتا سرویس آماده میتونیم به سرعت به یک سیستم شبیه مایکروسرویس برسیم.
ایدهی اصلی اینجا اینه که از سرویسهای Domain-Agnostic استفاده کنیم. یعنی سرویسهایی که ربط مستقیمی به Domain ما ندارن. صرفا به ما کمک میکنن که تمرکزمون روی Domain باشه.
راجب این تجربه توی بلاگ بیشتر نوشتم:
https://mazdakparnian.com/blogs/2026-04/simple-choices
@ever_code
Post #173
229