Jakis czas temu doszedlem do wniosku, ze wlasciwie jedyne co mi tak naprawde przeszkadza w monolith'ie to:
- koniecznosc pull'a calej aplikacji:
-- wyjatkowo nieoptymalne podejscie przypadku koniecznosci realizacji jakiegos drobnego ficzera lub usuniecia trywialnego bug'a
-- ryzyko pelnego dostep do partii kodu, ktore mozna okreslic jako "wrazliwe" lub "pufne" dla osob, ktore taki dostep moga potencjalnie wykorzystac w celu niepozadanym - problem ilosci zasobow, koniecznych do zaangazowania nawet w przypadku banalnych zapytan.
- problem skalowalnosci aplikacji
What if...
Budowac monolith skladajacy sie z wyspecjalizowanych modulow, ktore bylyby w stanie funkcjonowac zarowno jako integralne elementy calej aplikacji, jak i niezalezne serwisy? Tego rodzaju podejscie pozwala rozwiazac wymienione wczesniej przeze mnie problemy.
Ostatnio zaczalem sobie cos takiego przygotowywac i zastanawiam sie czy ktos z Was ma za soba jakies doswiadczenia, proby na tym polu.