Logo David Burdelak
Słownik · Web development

Czym są mikroserwisy?

Ostatnia aktualizacja:

Mikroserwisy to styl architektury, w którym aplikacja jest podzielona na małe, niezależne usługi, z których każda odpowiada za jedną funkcję i komunikuje się z innymi przez API. Przeciwieństwem jest monolit.

Mikroserwisy a monolit

Monolit to jedna aplikacja wdrażana jako całość, prostsza w rozwoju na początku. Mikroserwisy pozwalają niezależnie rozwijać i skalować poszczególne części kosztem większej złożoności.

Zalety mikroserwisów

  • niezależne wdrażanie i skalowanie usług,
  • możliwość użycia różnych technologii,
  • awaria jednej usługi nie wyłącza całości,
  • łatwiejszy podział pracy w dużych zespołach.

Wady i ryzyka

Trzeba zarządzać komunikacją sieciową, spójnością danych i monitoringiem wielu usług. W małych projektach taki podział często jest przerostem formy (overengineering).

Kiedy warto przejść na mikroserwisy?

Gdy zespół i produkt urosły tak, że jedna baza kodu spowalnia pracę, części systemu mają bardzo różne wymagania skalowania albo zespoły chcą wdrażać niezależnie. Rozsądnie jest zacząć od dobrze zorganizowanego monolitu i wydzielać usługi stopniowo. Przedwczesny podział generuje koszt infrastruktury, który bardzo trudno cofnąć.

Zobacz w praktyce

Powiązane pojęcia

Wszystkie hasła z kategorii Web development