Sdílet prostřednictvím


Adresovatelnost mikroslužeb a registr služeb

Návod

Tento obsah je výňatek z eBooku, architektury mikroslužeb .NET pro kontejnerizované aplikace .NET, které jsou k dispozici na .NET Docs nebo jako zdarma ke stažení PDF, které lze číst offline.

eBook o architektuře mikroslužeb .NET pro kontejnerizované aplikace .NET, miniatura na obálce.

Každá mikroslužba má jedinečný název (URL), který se používá k určení jejího umístění. Mikroslužba musí být adresovatelná všude, kde je spuštěná. Pokud se musíte zamyslet nad tím, na kterém počítači běží konkrétní mikroslužba, věci se mohou rychle zhoršit. Stejně jako DNS překládá adresu URL na konkrétní počítač, musí mít vaše mikroslužba jedinečný název, aby jeho aktuální umístění bylo zjistitelné. Mikroslužby potřebují adresovatelné názvy, díky kterým jsou nezávislé na infrastruktuře, na které běží. Tento přístup znamená, že mezi nasazením vaší služby a způsobem jeho zjištění existuje interakce, protože musí existovat registr služeb. Pokud počítač selže, musí být služba registru schopná indikovat, kde je služba nyní spuštěná.

Vzor registru služby je klíčovou součástí zjišťování služeb. Registr je databáze obsahující síťová umístění instancí služby. Registr služby musí být vysoce dostupný a up-to-date. Klienti můžou ukládat síťová umístění získaná z registru služby do mezipaměti. Tyto informace ale nakonec přestanou být aktuální a klienti už nemůžou zjišťovat instance služeb. Registr služby se tedy skládá z clusteru serverů, které používají protokol replikace k zachování konzistence.

V některých prostředích nasazení mikroslužeb (nazývaných clustery, které budou probrány v pozdější části) je zabudováno zjišťování služeb. Například prostředí Azure Kubernetes Service (AKS) může zpracovávat registraci a zrušení registrace instance služby. Také spouští proxy na každém hostiteli clusteru, která hraje roli směrovače pro zjišťování na straně serveru.

Dodatečné zdroje