Architektura monolityczna
Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji
Co to jest architektura monolityczna?
Architektura monolityczna to sposób budowy aplikacji, w którym większość funkcji systemu znajduje się w jednej wspólnej aplikacji i zwykle w jednym wspólnym kodzie źródłowym. Taka aplikacja jest wdrażana jako całość.
Monolit może zawierać jednocześnie logikę użytkowników, zamówień, płatności, panel administracyjny i obsługę bazy danych. Zmiana jednego fragmentu często wymaga ponownego zbudowania i wdrożenia całej aplikacji.
Cechy architektury monolitycznej
- jeden główny projekt lub kod źródłowy,
- wspólne wdrażanie całej aplikacji,
- silniejsze zależności między modułami,
- trudniejsze skalowanie tylko wybranych funkcji,
- prostszy start projektu przy małych aplikacjach.
Monolit a mikroserwisy
W mikroserwisach system jest dzielony na niezależne usługi. W monolicie aplikacja działa jako jedna większa całość. Dlatego odpowiedź „monolityczny kod źródłowy” nie pasuje do architektury mikroserwisów.
Kiedy monolit może być dobry?
Monolit nie zawsze jest błędem. Dla małych aplikacji może być prostszy, tańszy i łatwiejszy w utrzymaniu. Problem pojawia się głównie w dużych systemach, gdzie wiele zespołów rozwija różne części aplikacji i potrzebna jest niezależność wdrażania oraz skalowania.