Co to jest – service Mesh

Definicja pojęcia Co to jest – service Mesh
Metodyki
Definicja Agile

Service mesh to wzorzec architektoniczny i zestaw narzędzi używany do zarządzania komunikacją między usługami w architekturze mikroserwisowej. Głównym celem service mesha jest zapewnienie spójnego, bezpiecznego, obserwowalnego i niezawodnego sposobu komunikacji między mikroserwisami – bez konieczności implementowania tych mechanizmów w każdej usłudze z osobna.

Jak działa service mesh?

Service mesh składa się z dwóch głównych komponentów:

  1. Data plane – czyli tzw. płaszczyzna danych. To zestaw lekkich proxy (sidecarów) uruchamianych razem z każdą usługą (np. Envoy). Przechwytują i kontrolują cały ruch wychodzący i przychodzący do usługi.

  2. Control plane – czyli płaszczyzna kontrolna. To centralny komponent zarządzający konfiguracją i politykami, które przekazuje do proxy.

Co oferuje service mesh?

  • Load balancing – równoważenie obciążenia między instancjami usług.

  • Service discovery – odnajdywanie usług bez potrzeby ręcznego konfigurowania adresów.

  • Observability – monitoring, tracing i metryki komunikacji.

  • Retry, timeout, circuit breaking – zaawansowane mechanizmy odpornościowe.

  • Security – wzajemne uwierzytelnianie (mTLS), autoryzacja, szyfrowanie ruchu.

  • Traffic control – możliwość np. przekierowania tylko części ruchu do nowej wersji aplikacji (canary deployments).

Przykłady popularnych service mesh:

  • Istio

  • Linkerd

  • Consul Connect

  • Kuma (od Kong)

Kiedy warto używać service mesh:

  1. Masz wiele mikroserwisów
    Gdy liczba usług rośnie (np. > 10–15), trudniej ręcznie zarządzać połączeniami, retry, timeoutami czy obciążeniem.

  2. Potrzebujesz bezpieczeństwa komunikacji
    Gdy wymagana jest szyfrowana komunikacja (mTLS) między usługami — mesh może to załatwić automatycznie.

  3. Chcesz centralnie zarządzać routingiem i politykami ruchu
    Przekierowania, canary deployments, A/B testy – bez zmiany kodu usług.

  4. Monitoring i obserwowalność są krytyczne
    Service mesh (np. Istio) daje wbudowany tracing, metryki, logi dla każdego połączenia sieciowego.

  5. Chcesz rozdzielić logikę biznesową od sieciowej
    Retry, circuit breaking, timeouty – konfigurujesz raz dla całej siatki, nie w każdym serwisie.

  6. Wymagane są polityki dostępu (RBAC, whitelisty)
    Mesh potrafi egzekwować polityki komunikacji np. “Serwis A może rozmawiać z B, ale nie z C”.

Kiedy NIE warto:

  1. Masz monolit lub kilka usług
    Narzut operacyjny i wydajnościowy może przewyższyć korzyści.

  2. Brak potrzeby zaawansowanej sieciowej logiki
    Jeśli retry, security i monitoring są proste lub realizowane inaczej.

  3. Nie masz zasobów na zarządzanie meshem
    Istio, Linkerd itp. wprowadzają dodatkowe komponenty i wymagają wiedzy DevOps/SRE.

Free

Top 40 pytań rekrutacyjnych Java poziom Senior

Free

Pytania rekrutacyjne JavaScript

Free

Pytania rekrutacyjne Spring Framework 

Free

Java pytania rekrutacyjne

Scroll to Top