.NET-mikroszolgáltatások: Tárolóalapú .NET-alkalmazások architektúrája

Book cover

EDITION v6.0 – frissítve a ASP.NET Core 6.0-s verziójára

A könyvfrissítéseket és a közösségi hozzájárulásokat a változásnaplóban találja.

Ez az útmutató bevezetést nyújt a mikroszolgáltatás-alapú alkalmazások fejlesztésébe és tárolók használatával történő felügyeletükbe. Az architekturális tervezési és megvalósítási megközelítéseket tárgyalja .NET- és Docker-tárolók használatával.

Az első lépések megkönnyítése érdekében az útmutató egy tárolóalapú és mikroszolgáltatás-alapú referenciaalkalmazásra összpontosít, amelyet megvizsgálhat. A referenciaalkalmazás az eShopOnContainers GitHub adattárban érhető el.

Bevezetés

A vállalatok egyre nagyobb mértékben realizálják a költségmegtakarítást, megoldják az üzembehelyezési problémákat, és tárolók használatával fejlesztik a DevOps- és az éles üzemeltetést. A Microsoft tárolóinnovációkat adott ki Windows és Linux rendszerekhez olyan termékek létrehozásával, mint a Azure Kubernetes Service és az Azure Service Fabric, valamint olyan iparági vezetőkkel való együttműködés révén, mint a Docker, a Mesosphere és a Kubernetes. Ezek a termékek tárolómegoldásokat biztosítanak, amelyek segítenek a vállalatoknak alkalmazások felhőbeli és nagy léptékű létrehozásában és üzembe helyezésében, függetlenül attól, hogy milyen platformot vagy eszközöket választanak.

A Docker a tárolóipar de facto szabványává válik, amelyet a Windows és a Linux ökoszisztémájának legjelentősebb szállítói támogatnak. (A Microsoft az egyik fő felhőszolgáltató, amely támogatja a Dockert.) A jövőben a Docker valószínűleg mindenhol elérhető lesz a felhőben vagy a helyszínen található bármely adatközpontban.

Emellett a mikroszolgáltatás-architektúra fontos megközelítésként jelent meg az elosztott, kritikus fontosságú alkalmazások esetében. Mikroszolgáltatás-alapú architektúrában az alkalmazás olyan szolgáltatások gyűjteményére épül, amelyek egymástól függetlenül fejleszthetők, tesztelhetők, üzembe helyezhetők és verziószámozottak.

Rövid áttekintés

Ez az útmutató bevezetést nyújt a mikroszolgáltatás-alapú alkalmazások fejlesztésébe és tárolók használatával történő felügyeletükbe. Az architekturális tervezési és megvalósítási megközelítéseket tárgyalja .NET- és Docker-tárolók használatával. A tárolók és mikroszolgáltatások használatának megkönnyítése érdekében az útmutató egy tárolóalapú és mikroszolgáltatás-alapú referenciaalkalmazásra összpontosít, amelyet megvizsgálhat. A mintaalkalmazás az eShopOnContainers GitHub adattárban érhető el.

Ez az útmutató alapvető fejlesztési és architekturális útmutatást nyújt, elsősorban fejlesztési környezet szintjén, két technológiával: a Dockerrel és a .NET-tel. Az a célunk, hogy ezt az útmutatót akkor olvassa el, amikor az éles környezet infrastruktúrájára (felhőre vagy helyszínire) összpontosítva gondolkodik az alkalmazás kialakításán. Az infrastruktúrával kapcsolatban később, az éles üzemre kész alkalmazások létrehozásakor fog döntéseket hozni. Ezért ez az útmutató infrastruktúrafüggetlen és fejlesztési-környezetközpontúbb.

Az útmutató tanulmányozása után a következő lépés az Microsoft Azure éles üzemre kész mikroszolgáltatásainak ismertetése lesz.

Verzió

Ezt az útmutatót úgy módosítottuk, hogy lefedje a .NET 6-os verziót, valamint számos további frissítést is, amelyek ugyanahhoz a technológiákhoz (azaz az Azure-hoz és további külső technológiákhoz) kapcsolódnak, amelyek a .NET 6 kiadással egy időben egybeesnek. Ezért frissült a könyv verziója is a 6.0-s verzióra.

Amit ez az útmutató nem tartalmaz

Ez az útmutató nem az alkalmazás életciklusára, a DevOpsra, a CI-/CD-folyamatokra vagy a csapatmunkára összpontosít. A Containerized Docker Application Lifecycle és a Microsoft Platform and Tools kiegészítő útmutatója erre a témára összpontosít. A jelenlegi útmutató az Azure-infrastruktúrával kapcsolatos megvalósítási részleteket, például az egyes vezénylőkre vonatkozó információkat sem tartalmazza.

További források

Who használja ezt az útmutatót

Ezt az útmutatót olyan fejlesztőknek és megoldástervezőknek írtuk, akik még nem ismerik a Docker-alapú alkalmazásfejlesztést és a mikroszolgáltatás-alapú architektúrát. Ez az útmutató az Ön számára készült, ha meg szeretné ismerni, hogyan építhet ki, tervezhet és valósíthat meg megvalósíthatósági vizsgálatot alkalmazó alkalmazásokat a Microsoft fejlesztési technológiáival (különös tekintettel a .NET-re) és a Docker-tárolókra.

Ez az útmutató akkor is hasznos, ha Ön műszaki döntéshozó, például vállalati tervező, aki architektúra- és technológia-áttekintést szeretne, mielőtt eldöntené, hogy milyen megközelítést válasszon az új és modern elosztott alkalmazásokhoz.

Az útmutató használata

Az útmutató első része bemutatja a Docker-tárolókat, ismerteti, hogyan választhat a .NET 6 és a .NET-keretrendszer között fejlesztési keretrendszerként, és áttekintést nyújt a mikroszolgáltatásokról. Ez a tartalom olyan tervezőknek és műszaki döntéshozóknak szól, akik áttekintést szeretnének, de nem kell a kód implementálásának részleteire összpontosítaniuk.

Az útmutató második része a Docker-alapú alkalmazások fejlesztési folyamatával kezdődik. Az alkalmazások .NET és Docker használatával történő implementálásának fejlesztési és mikroszolgáltatási mintáival foglalkozik. Ez a szakasz azoknak a fejlesztőknek és tervezőknek lesz a legfontosabb, akik a kódra, valamint a mintákra és az implementáció részleteire szeretnének összpontosítani.

Az eShopOnContainers alkalmazás egy nyílt forráskódú referenciaalkalmazás .NET-hez és mikroszolgáltatásokhoz, amelyeket Docker-tárolók használatával történő üzembe helyezésre terveztek. Az alkalmazás több alrendszerből áll, köztük számos e-store felhasználói felületi előtérrendszerből (web MVC-alkalmazás, web SPA és natív mobilalkalmazás). Emellett tartalmazza a háttérbeli mikroszolgáltatásokat és tárolókat az összes szükséges kiszolgálóoldali művelethez.

Az alkalmazás célja az architekturális minták bemutatása. EZ NEM ÉLES HASZNÁLATRA KÉSZ SABLON valós alkalmazások indításához. Valójában az alkalmazás végleges béta állapotban van, mivel az új, potenciálisan érdekes technológiák tesztelésére is használatos, amint megjelennek.

Küldje el visszajelzését!

Ezt az útmutatót azért írtuk meg, hogy segítsen megérteni a tárolóalapú alkalmazások és mikroszolgáltatások architektúráját a .NET-ben. Az útmutató és a kapcsolódó referenciaalkalmazás folyamatosan bővülni fog, ezért örömmel vesszük visszajelzését! Ha megjegyzést szeretne fűzni az útmutató továbbfejlesztéséhez, küldjön visszajelzést a címen https://aka.ms/ebookfeedback.

Kreditek

Társszerzők:

Cesar de la Torre, Sr. PM, .NET termékcsapat, Microsoft Corp.

Bill Wagner, tartalomfejlesztő, C+E, Microsoft Corp.

Mike Rousos, vezető szoftvermérnök, DevDiv CAT csapat, Microsoft

Szerkesztők:

Mike Pope

Steve Hoag

Résztvevők és véleményezők:

Jeffrey Richter, Partner Software Eng, Azure-csapat, Microsoft

Jimmy Bogard, a Headspring vezető építésze

Udi Dahan, alapító & vezérigazgató, Különleges szoftver

Jimmy Nilsson, a Factor10 társalapítója és vezérigazgatója

Glenn Condron, vezető programmenedzser, ASP.NET csapat

Mark Fussell, vezető programmenedzsere, Azure Service Fabric csapat, Microsoft

Diego Vega, pm lead, Entity Framework team, Microsoft

Barry Dorrans, biztonsági programmenedzser

Rowan Miller, sr. programmenedzser, Microsoft

Ankit Asthana, vezető PM-vezető, .NET-csapat, Microsoft

Scott Hunter, partnerigazgató, .NET-csapat, Microsoft

Nish Anil, sr. programmenedzser, .NET-csapat, Microsoft

Dylan Reisenberger, építész és dev vezető a Pollynál

Steve "ardalis" Smith - Szoftvertervező és tréner - Ardalis.com

Ian Cooper, kódolási tervező a Brighternél

Unai Zorrilla, tervező és fejlesztési vezető az egyszerű fogalmaknál

Eduard Tomas, dev lead az egyszerű fogalmaknál

Ramon Tomas, fejlesztő az Egyszerű fogalmaknál

David Sanz, a Plain Concepts fejlesztője

Javier Valero, a Grupo Solutio üzemeltetési igazgatója

Pierre Millet, vezető tanácsadó, Microsoft

Michael Friis, Termékmenedzser, Docker Inc.

Charles Lowell, szoftvermérnök, VS CAT csapat, Microsoft

Miguel Veloso, szoftverfejlesztő mérnök az egyszerű fogalmaknál

Sumit Ghosh, a Neudesic vezető tanácsadója

KÖZZÉTETTE

Microsoft Developer Division, .NET és Visual Studio termékcsapatok

A Microsoft Corporation egy részlege

One Microsoft Way

Redmond, Washington 98052-6399

Copyright © 2022 by Microsoft Corporation

All rights reserved. A könyv tartalmának egy része nem reprodukálható vagy terjeszthető semmilyen formában vagy bármilyen módon a kiadó írásos engedélye nélkül.

Ez a könyv "adott állapotban" érhető el, és kifejezi a szerző véleményét és véleményét. Az ebben a könyvben kifejezett nézetek, vélemények és információk, beleértve az URL-címet és az internetes webhelyek egyéb hivatkozásait, értesítés nélkül változhatnak.

Az itt bemutatott példák csak illusztrációként szolgálnak, és nem valósak. A valósággal való esetleges egybeesések és kapcsolatok nem szándékosak.

A Microsoft és a "Védjegyek" weblapon https://www.microsoft.com felsorolt védjegyek a Microsoft vállalatcsoport védjegyei.

A Mac és a macOS az Apple Inc. védjegye.

A Docker bálna emblémája a Docker, Inc. bejegyzett védjegye. Engedély alapján használják.

Minden más jel és embléma a megfelelő tulajdonosok tulajdona.