Poznaj architekturę mikrousług

Ukończone

Obecnie często słyszysz termin mikrousługi. Mikrousługa jest autonomicznym, niezależnie wdrażanym i skalowalnym składnikiem oprogramowania.

Są małe, skoncentrowane na robieniu jednej rzeczy dobrze i mogą działać autonomicznie. Jeśli jedna mikrousługa ulegnie zmianie, nie powinna mieć wpływu na żadne inne mikrousługi w obrębie środowiska.

Wybierając architekturę mikrousług, utworzysz krajobraz usług, które można opracowywać, testować i wdrażać oddzielnie. Oznacza to inne zagrożenia i złożoność.

Najlepszym rozwiązaniem byłoby utworzenie go w celu śledzenia interfejsów i sposobu ich interakcji. Musisz zachować wiele cykli życia aplikacji zamiast jednego.

Diagram showing a microservice architecture with multiple applications.

W tradycyjnej aplikacji często widzimy architekturę wielowarstwową.

Jedna warstwa z interfejsem użytkownika, warstwa z logiką biznesową i usługami oraz warstwa z usługami danych.

Czasami istnieją dedykowane zespoły dla interfejsu użytkownika i zaplecza. Gdy coś musi się zmienić, musi zmienić się we wszystkich warstwach.

Podczas przechodzenia do architektury mikrousług wszystkie te warstwy są częścią tej samej mikrousługi.

Tylko mikrousługa zawiera jedną konkretną funkcję.

Interakcja między mikrousługami odbywa się asynchronicznie.

Nie nazywają się bezpośrednio, ale używają mechanizmów asynchronicznych, takich jak kolejki lub zdarzenia.

Każda mikrousługa ma swój cykl życia i potok ciągłego dostarczania. Jeśli zostały one utworzone poprawnie, można wdrożyć nowe wersje mikrousług bez wpływu na inne części systemu.

Architektura mikrousług nie jest niewątpliwie wymaganiem wstępnym dla ciągłego dostarczania, ale mniejsze składniki oprogramowania pomagają zaimplementować w pełni zautomatyzowany potok.