لا تعتبر الخدمات المصغرة نمط تحسين الأداء.
إنها تبادل معماري.
عند تقسيم بنية موحدة إلى خدمات متصلة بالشبكة، فإنك تضيف:
- التسلسل وإعادة التسلسل
- التحويلات الشبكية
- منطق إعادة المحاولة
- عبء المراقبة
- المزيد من أوضاع الفشل
هذه هي التكلفة الحقيقية. التظاهر بخلاف ذلك ليس هندسة جادة.
لماذا تختار الفرق ذلك
عادة ما تكون المزايا في مكان آخر:
- استقلالية الفريق
- وتيرة نشر منفصلة
- ملكية الخدمة بشكل أقوى
- توسيع أحمال العمل المختلفة بشكل مستقل
لذا فإن الإطار الصحيح ليس "الخدمات المصغرة جيدة" أو "المنولوجات جيدة."
إنه:
"ما هي المشكلة التي ندفع هذه الضريبة لحلها؟"
عندما يكون المنولوج أفضل
غالبًا ما يكون المنولوج المعياري هو الخيار الصحيح عندما:
- لا يزال الفريق صغيرًا
- لا تزال حدود المجال تتغير
- تعتبر الكمونات بين المكونات مهمة
- تكتسب البساطة التشغيلية قيمة
هذه ليست هندسة تنازلية. غالبًا ما تكون الخيار الناضج.
عندما تبدأ الخدمات المصغرة في أن تكون منطقية
يصبح التبادل أسهل للتبرير عندما:
- تكون المنظمة كبيرة بما يكفي لتحتاج إلى حدود أقوى
- تحتاج أجزاء من النظام حقًا إلى ملفات تعريف توسيع مختلفة
- تعتبر مجالات الفشل المستقلة قيمة
- يمكن للفريق دعم التعقيد التشغيلي
يمكن أن تكون الخدمات المصغرة هي الجواب الصحيح. لكنها نادرًا ما تكون الإجابة الأسهل من حيث مسار الطلب الخام.
قراءة إضافية