Kiedy architektura mikroserwisowa winduje koszty małej firmy
Mikroserwisy – to brzmi dumnie, nowocześnie i skalowalnie. Ale w małej firmie często kończy się to tak: zamiast jednego deployu masz dziesięć, zamiast jednego logowania – federacja, a zespół programistyczny spędza więcej czasu na konfiguracji niż na dostarczaniu funkcji biznesowych. Nie mówię, że mikroserwisy są złe. Mówię, że w 8 na 10 przypadków u klientów MŚP to overkill.
Na początku 2024 roku trafiła do nas firma z sektora e-commerce – 5 developerów, skala 50 tys. zamówień miesięcznie. Mieli już mikroserwisy: osobny serwis do koszyka, do płatności, do wysyłki, do powiadomień. Brzmiało profesjonalnie. Gdy zaczęliśmy analizować rzeczywiste koszty utrzymania i czas wdrożenia nowych funkcji, okazało się, że każda zmiana wymagała koordynacji między 4 serwisami, a średni czas wdrożenia feature’a wynosił 3 tygodnie. Po migracji na dobrze zorganizowany monolit (z wyraźnym podziałem na moduły) czas ten spadł do 5 dni, a miesięczne koszty infrastruktury spadły o 40%.
Dlaczego mikroserwisy kuszą?
Mikroserwisy dają autonomię zespołom – każdy zespół może rozwijać swój serwis niezależnie. Problem w tym, że w małej firmie nie ma wielu zespołów. Jest jeden, czasem dwa. Wtedy korzyść znika, a pojawiają się koszty:
- Szyny integracyjne – każde API między serwisami to dodatkowy narzut na dokumentację, testy, monitoring i obsługę błędów.
- Zarządzanie danymi – w mikroserwisach często każdy serwis ma własną bazę, co przy spójnych danych biznesowych prowadzi do problemów z transakcyjnością i spójnością.
- Obsługa błędów – rozproszone transakcje to problemy, których nie ma w monolitycznej bazie.
Kiedy monolit wygrywa?
Monolit nie jest brzydkim słowem. Dla wielu firm – zwłaszcza do 30 developerów – to najefektywniejsze rozwiązanie. Nie chodzi o wielki blok spaghetti, ale o modułowy monolit z wyraźną granicą między domenami, ale współdzieloną bazą i jednym procesem wdrożeniowym.
Przykład z innej branży: startup SaaS do zarządzania projektami. Zaczęli od mikroserwisów (hype, świeże technologie). Po roku mieli 20 serwisów, ale tylko 6 developerów. Każde wdrożenie wymagało orkiestracji, a logi i debugging były koszmarem. Po refaktoryzacji do monolitu (z dobrze wydzielonymi modułami) wdrożenia stały się jednym kliknięciem, a nowi programiści wchodzili w projekt w 2 dni zamiast 2 tygodni.
Jak wybrać odpowiednią architekturę?
Zadaj sobie trzy pytania:
- Czy mój zespół jest większy niż 2-3 osoby na serwis? Jeśli nie, koszty komunikacji przewyższają korzyści.
- Czy rzeczywiście potrzebuję skalować poszczególne fragmenty niezależnie? Większość MŚP ma jeden bottleneck – bazę danych. Skalowanie wertykalnie wystarcza.
- Czy mam dojrzałe praktyki DevOps? Bez solidnego CI/CD, monitorowania i konteneryzacji mikroserwisy to przepis na chaos.
Jeśli odpowiedź na któreś z nich to „nie”, rozważ dobrze zorganizowany monolit. Możesz zawsze później wyciąć fragment jako niezależny serwis, gdy faktycznie zajdzie taka potrzeba. To ewolucja, nie rewolucja.
Podsumowanie
Nie daj się złapać w pułapkę mody. Architektura ma służyć biznesowi, a nie portfolio programistów. Dla małej firmy często największym kosztem jest złożoność, nie liczba linii kodu. Wybierz prostsze rozwiązanie, dopóki nie masz realnych dowodów, że potrzebujesz więcej.
JurskiTech pomaga firmom wybrać odpowiednią architekturę – taką, która nie winduje kosztów i nie spowalnia rozwoju. Sprawdź, czy Twój stack jest zoptymalizowany pod realne potrzeby.


