Mikroslužby .NET: Architektura pro kontejnerizované aplikace .NET
EDITION v6.0 – aktualizace na ASP.NET Core 6.0
Projděte si protokol změn pro aktualizace knihy a příspěvky komunity.
Tato příručka je úvodem k vývoji aplikací založených na mikroslužbách a jejich správě pomocí kontejnerů. Popisuje přístupy k návrhu a implementaci architektury pomocí kontejnerů .NET a Dockeru.
Aby bylo snazší začít, průvodce se zaměřuje na referenční kontejnerizovanou a mikroslužbu založenou na aplikaci, kterou můžete prozkoumat. Referenční aplikace je k dispozici v úložišti eShopOnContainers GitHub.
Odkazy na akce
Tato elektronická kniha je dostupná také ve formátu PDF (pouze v angličtině) Ke stažení
Clone/Fork referenční aplikace eShopOnContainers on GitHub
Podívejte se na úvodní video
Seznamte se s architekturou mikroslužeb hned
Úvod
Podniky stále častěji realizují úspory nákladů, řešení problémů s nasazením a zlepšují DevOps a produkční provoz pomocí kontejnerů. Microsoft vydává inovace kontejnerů pro Windows a Linux tím, že vytváří produkty, jako jsou Azure Kubernetes Service a Azure Service Fabric, a spolupracuje s vedoucími pracovníky odvětví, jako je Docker, Mesosphere a Kubernetes. Tyto produkty poskytují kontejnerová řešení, která společnostem pomáhají sestavovat a nasazovat aplikace rychlostí a škálováním cloudu, a to bez ohledu na jejich výběr platformy nebo nástrojů.
Docker se stává standardem de facto v odvětví kontejnerů, který podporuje nejvýznamnější dodavatelé v ekosystémech Windows a Linuxu. (Microsoft je jedním z hlavních dodavatelů cloudu podporujících Docker.) V budoucnu bude Docker pravděpodobně všudypřítomný v jakémkoli datacentru v cloudu nebo v místním prostředí.
Kromě toho se architektura mikroslužeb objevuje jako důležitý přístup k distribuovaným kritickým aplikacím. V architektuře založené na mikroslužbách je aplikace založená na kolekci služeb, které je možné vyvíjet, testovat, nasazovat a upravovat nezávisle na verzích.
O této příručce
Tato příručka je úvodem k vývoji aplikací založených na mikroslužbách a jejich správě pomocí kontejnerů. Popisuje přístupy k návrhu a implementaci architektury pomocí kontejnerů .NET a Dockeru. Aby bylo snazší začít pracovat s kontejnery a mikroslužbami, průvodce se zaměřuje na referenční kontejnerizovanou a mikroslužbu založenou na aplikaci, kterou můžete prozkoumat. Ukázková aplikace je k dispozici v úložišti eShopOnContainers GitHub.
Tato příručka poskytuje základní pokyny k vývoji a architektuře především na úrovni vývojového prostředí se zaměřením na dvě technologie: Docker a .NET. Naším záměrem je přečíst si tuto příručku, když přemýšlíte o návrhu vaší aplikace, aniž byste se museli soustředit na infrastrukturu (cloud nebo místní prostředí) vašeho produkčního prostředí. Při vytváření aplikací připravených pro produkční prostředí budete později rozhodovat o vaší infrastruktuře. Proto je tato příručka určená k tomu, aby byla infrastruktura nezávislá a více zaměřená na vývojové prostředí.
Po studiu této příručky by dalším krokem bylo seznámení s mikroslužbami připravenými k produkčnímu prostředí na Microsoft Azure.
Verze
Tato příručka byla upravena tak, aby zahrnovala verzi .NET 6 spolu s mnoha dalšími aktualizacemi souvisejícími se stejnou "vlnou" technologií (tj. Azure a dalších technologií třetích stran) v čase s vydáním .NET 6. Proto se také verze knihy aktualizovala na verzi 6.0.
Co tento průvodce nepokrývá
Tato příručka se nezaměřuje na životní cyklus aplikací, DevOps, kanály CI/CD ani týmové práce. Doplňkový průvodce kontejnerizovaným životním cyklem aplikací Dockeru s platformou a nástroji Microsoftu se zaměřuje na toto téma. Aktuální průvodce také neposkytuje podrobnosti o implementaci infrastruktury Azure, například informace o konkrétních orchestrátorech.
Další materiály
- Životní cyklus kontejnerizované aplikace Dockeru s platformou a nástroji Microsoftu (stáhnoutelný e-book)
https://aka.ms/dockerlifecycleebook
Kdo by měl tento průvodce používat.
Napsali jsme tuto příručku pro vývojáře a architekty řešení, kteří jsou noví pro vývoj aplikací založených na Dockeru a architekturu založenou na mikroslužbách. Tato příručka je určená, pokud se chcete naučit, jak navrhovat, navrhovat a implementovat aplikace pro testování konceptu pomocí vývojových technologií Microsoftu (se zvláštním zaměřením na .NET) a kontejnery Dockeru.
Tento průvodce najdete také užitečný, pokud jste technickým rozhodovacím pracovníkem, jako je podnikový architekt, který chce mít přehled architektury a technologie, než se rozhodnete, jaký přístup se má vybrat pro nové a moderní distribuované aplikace.
Jak používat tohoto průvodce
První část tohoto průvodce představuje kontejnery Dockeru, popisuje, jak si vybrat mezi .NET 6 a .NET Framework jako vývojovou architekturou a poskytuje přehled mikroslužeb. Tento obsah je určený pro architekty a pracovníky s technickými rozhodnutími, kteří chtějí přehled, ale nemusí se soustředit na podrobnosti implementace kódu.
Druhá část průvodce začíná procesem vývoje pro aplikace založené na Dockeru . Zaměřuje se na vzory vývoje a mikroslužeb pro implementaci aplikací pomocí .NET a Dockeru. Tato část bude nejvíce zajímat vývojáře a architekty, kteří se chtějí zaměřit na kód a na vzory a podrobnosti implementace.
Související referenční aplikace založené na mikroslužbách a kontejnerech: eShopOnContainers
Aplikace eShopOnContainers je opensourcová referenční aplikace pro .NET a mikroslužby, které jsou navržené k nasazení pomocí kontejnerů Dockeru. Aplikace se skládá z několika subsystémů, včetně několika front-endů uživatelského rozhraní e-storu (aplikace Web MVC, webová SPA a nativní mobilní aplikace). Zahrnuje také back-endové mikroslužby a kontejnery pro všechny požadované operace na straně serveru.
Účelem aplikace je prezentovat architektonické vzory. NEJEDNÁ SE O ŠABLONU PŘIPRAVENOU PRO PRODUKČNÍ PROSTŘEDÍ pro spouštění aplikací z reálného světa. Aplikace je ve skutečnosti v trvalém beta stavu, protože se používá také k testování nových potenciálně zajímavých technologií, jak se zobrazují.
Vyjádřete svůj názor.
Napsali jsme tento průvodce, který vám pomůže pochopit architekturu kontejnerizovaných aplikací a mikroslužeb v .NET. Průvodce a související referenční aplikace se bude vyvíjet, takže vítáme vaši zpětnou vazbu! Pokud máte komentáře k tomu, jak lze tuto příručku vylepšit, odešlete zpětnou vazbu na https://aka.ms/ebookfeedbackadrese .
Kredity
Spoluautoři:
Cesar de la Torre, Sr. PM, produktový tým .NET, Microsoft Corp.
Bill Wagner, Sr. Content Developer, C+E, Microsoft Corp.
Mike Rousos, hlavní softwarový inženýr, tým DevDiv CAT, Microsoft
Editory:
Mike Pope
Steve Hoag
Účastníci a revidoři:
Jeffrey Richter, Partner Software Eng, Tým Azure, Microsoft
Jimmy Bogard, hlavní architekt ve společnosti Headspring
Udi Dahan, zakladatel generální & ředitel, konkrétní software
Jimmy Nilsson, spolu-zakladatel a generální ředitel Factor10
Glenn Condron, Vedoucí programu, ASP.NET tým
Mark Fussell, hlavní vedoucí pm, tým Azure Service Fabric, Microsoft
Diego Vega, vedoucí pm, tým Entity Frameworku, Microsoft
Barry Dorrans, Sr. Security Program Manager
Rowan Miller, Sr. Program Manager, Microsoft
Ankit Asthana, hlavní manažer PM, tým .NET, Microsoft
Scott Hunter, ředitel partnera PM, tým .NET, Microsoft
Nish Anil, Sr. Program Manager, tým .NET, Microsoft
Dylan Reisenberger, Architekt a Dev Lead ve společnosti Polly
Steve "ardalis" Smith - Softwarový architekt a trenér - Ardalis.com
Ian Cooper, Architekt kódování ve společnosti Brighter
Unai Zorrilla, Architekt a Dev Lead ve společnosti Plain Concepts
Eduard Tomas, Dev Lead ve společnosti Plain Concepts
Ramon Tomas, Developer ve společnosti Plain Concepts
David Sanz, Developer ve společnosti Plain Concepts
Javier Valero, chief Operating Officer ve společnosti Grupo Solutio
Pierre Millet, Sr. Consultant, Microsoft
Michael Friis, Produktový manažer, Docker Inc
Charles Lowell, softwarový inženýr, tým VS CAT, Microsoft
Miguel Veloso, softwarový vývojový inženýr ve společnosti Plain Concepts
Sumit Ghosh, Principal Consultant ve společnosti Neudesic
Copyright
PUBLIKOVAL(A)
Microsoft Developer Division, .NET a Visual Studio produktové týmy
Divize Společnosti Microsoft Corporation
One Microsoft Way
Redmond, Washington 98052-6399
Copyright © 2022 by Microsoft Corporation
All rights reserved. Bez písemného souhlasu vydavatele nesmí být reprodukována ani přenášena žádná část obsahu této knihy nebo jakýmkoli způsobem bez písemného svolení vydavatele.
Tato kniha je poskytována "tak, jak je" a vyjadřuje názory a názory autora. Názory, názory a informace vyjádřené v této knize, včetně adres URL a dalších odkazů na internetové stránky, se mohou změnit bez předchozího upozornění.
Některé zde uvedené příklady slouží pouze k znázornění a jsou smyšlené. Neměli byste z nich vyvozovat žádné skutečné vztahy či spojení.
Microsoft a ochranné známky uvedené na https://www.microsoft.com webové stránce "Ochranné známky" jsou ochranné známky skupiny společností Microsoft.
Mac a macOS jsou ochranné známky společnosti Apple Inc.
Logo Docker whale je registrovaná ochranná známka společnosti Docker, Inc. Používá se podle oprávnění.
Všechny ostatní značky a loga jsou majetkem příslušných vlastníků.