Мікросервісна архітектура: коли треба, а коли вб'є проєкт
Мікросервіси розв'язують проблеми великих команд і великих навантажень. Для малого проєкту вони створюють проблеми замість того, щоб їх розв'язувати.
Яку проблему вони розв'язують
Незалежний розвиток частин системи різними командами й окреме масштабування навантажених компонентів.
Якщо у вас одна команда з трьох людей, жодної з цих проблем у вас немає.
Ціна підходу
Складність розгортання, розподілене логування, узгодженість даних між сервісами, налагодження проблем через кілька систем.
Те, що в єдиному застосунку розв'язується за годину, у розподіленій системі може зайняти день.
Розумний шлях
Почати з єдиного застосунку з чіткими внутрішніми межами. Виділяти сервіси тоді, коли з'явиться конкретна причина.
Це значно дешевше, ніж будувати розподілену систему наперед і потім її спрощувати.
Коротко
Починайте з єдиного застосунку з хорошою внутрішньою структурою. Виділяйте сервіси за реальною потребою, а не наперед.