جعفر کاظمی
جعفر کاظمی
خواندن ۲ دقیقه·۱۰ ماه پیش

چرا باید سراغ میکروسرویس برویم؟

نباید صرفاً به خاطر جذابیت میکروسرویس سراغ این روش تولید برویم. اعتقاد راسخی دارم که کار تولید نرم‌افزار هم مانند سایر کارهای دیگر بایستی اقتصادی باشد یعنی بر مبنای اقتصادی توجیه داشته باشد این تشخیص چیزی نیست که یک تاجر بتواند آنرا به تنهایی تشخیص دهد بلکه نیاز هست که مدیر یا مسئول فنی تولید به مدیر اقتصادی توضیح دهد که چقدر زمان و هزینه و میزان ریسک وجود دارد. البته که مسئول فنی هم بایستی با تجربه باشد و گرنه مشاوره و اطلاعات ایشان برای مدیر اقتصادی فاقد ارزش خواهد بود.

چه نوع پروژه‌هایی برای اجرا با میکروسرویس مناسب هستند؟

برای اینکه بتوانم به این سوال بدرستی پاسخ دهم اجازه دهید افکارم را در همین سطور برایتان توضیح دهم. یکی از پروژه‌های مناسب برای توسعه با میکروسرویس، پروژه‌های Enterprise هست یعنی بزرگ و گسترده. بزرگی شامل تنوع سرویس و همچنین تعداد تراکنشهای عملیاتی در هر سروریس هست این دو هم زمان باید باشند. اگر تنوع سرویس بالاست ولی تراکنشها کم، در این صورت هم نیازی نیست سراغ میکروسرویس برویم. تراکنشها را در طول حیات پروژه باید در نظر گرفت یعنی آینده‌نگری هم باید کرد.

لازمه دیگر اجرای پروژه بزرگ بر مبنای میکروسرویس، شناخت و تحلیل کامل پروژه است یعنی شما در مرحله آزمایش و خطا نباشید و دقیقاً بدانید چه محصولی را با چه ویژگی‌هایی باید خلق کنید. اگر قبلاً در این مسیر اقداماتی انجام داده‌اید و پروژه‌هایی را اجرا کرده‌اید خیلی هم عالی خواهد بود.

نرم‌افزارهای مبتنی بر SaaS‌بهترین گزینه برای اجرا با میکروسرویس هستند.
نرم‌افزارهای مبتنی بر SaaS‌بهترین گزینه برای اجرا با میکروسرویس هستند.
بطور کلی در نظر داشته‌ باشید هیچ پروژه بزرگ میکروسرویسی را به تیم کم تجربه نسپارید حتی تیم شما از بهترینهای تخصصی و از نخبه‌ها جمع کرده باشید. تولید یک پروژه بزرگ با میکروسرویس فقط با تیم متخصص و با تجربه امکان پذیر است وگرنه به محصول دست نخواهید یافت. تجربه یعنی انجام موفق حداقل یک پروژه مشابه پروژه شما.

ویژگی‌های یک پروژه موفق نرم‌افزاری:

  • مستند شده باشد(اسناد تحلیل، مستندات فنی پروژه، مستندات امنیتی و پشتیبانی)
  • تمام نیازمندیهای عملکردی پروژه، تحویل داده شده و تست شده باشند.
  • پروژه حداقل یک سال در حال استفاده باشد(کاربران نهایی)
  • الزامات فنی تکمیلی انجام شده باشد( کنترل لاگ‌ها، نظام بک‌آپ، نظام Scale Up ,Down، مانیتورینگ اجزاء و سرویسها و ...)
  • دسترس پذیری کامل سرویس در طول اجرای قبلی( عدم وجود توقف غیر منتظره سرویس‌ها بهر دلیل مانند خرابی سرور یا هنگ بخشی از سیستم یا هر مشکلی که موجب توقف زمان قابل توجه مانند یک روز، یا چند ساعت در پروژه شده باشد)

این نوشته هنوز تکمیل نشده و ویرایش خواهد شد ... موفق باشید و پایدار



میکروسرویسدسترس پذیریپروژه
در کار حرفه‌ای عاشق آفرینشم، برنامه نویسی و تولید راهکارهای جذاب انرژی بخش وجودم هست همان انرژی که اغلب در قله‌ کوههای بلند کوهستان بدان می‌رسم، دماوند، توچال، سبلان. کوهنورد هم هستم.
شاید از این پست‌ها خوشتان بیاید