Introduktion till exempelappen
I den här serien med snabbstarter används en exempelapp som består av två mikrotjänster för att visa hur du distribuerar en .NET Core Azure Spring Cloud toe-app till Azure Spring Cloud tjänsten. Du kommer att Azure Spring Cloud funktioner som tjänstidentifiering, konfigurationsserver, loggar, mått och distribuerad spårning.
Funktionella tjänster
Exempelappen består av två mikrotjänster:
Tjänsten
planet-weather-providerreturnerar vädertext som svar på en HTTP-begäran som anger planetnamnet. Den kan till exempel returnera "mycket varm" för planetPlanet. Den hämtar väderdata från konfigurationsservern. Konfigurationsservern hämtar väderdata från en YAML-fil på en Git-lagringsplats, till exempel:MercuryWeather: very warm VenusWeather: quite unpleasant MarsWeather: very cool SaturnWeather: a little bit sandyTjänsten
solar-system-weatherreturnerar data för fyra planeter som svar på en HTTP-begäran. Den hämtar data genom att göra fyra HTTP-begäranden tillplanet-weather-provider. Den använder eureka-serveridentifieringstjänsten för att anropaplanet-weather-provider. Den returnerar JSON, till exempel:[{ "Key": "Mercury", "Value": "very warm" }, { "Key": "Venus", "Value": "quite unpleasant" }, { "Key": "Mars", "Value": "very cool" }, { "Key": "Saturn", "Value": "a little bit sandy" }]
Följande diagram illustrerar exempelappens arkitektur:
Kodlagringsplats
Exempelappen finns i mappenmoln-exempel på lagringsplatsen Azure-Samples/Azure-Spring-Cloud-Samples GitHub.
Anvisningarna i följande snabbstarter refererar till källkoden efter behov.
I den här snabbstarten använder vi mikrotjänstversionen av den välkända exempelappen PetClinic som visar hur du distribuerar appar till Azure Spring Cloud tjänsten. Exemplet på pet clinic visar arkitekturmönstret för mikrotjänster och visar uppdelningen av tjänsterna. Du kommer att se hur tjänster distribueras till Azure med Azure Spring Cloud-funktioner, inklusive tjänstidentifiering, konfigurationsserver, loggar, mått, distribuerad spårning och stöd för utvecklarvänligt verktyg.
Om du Azure Spring Cloud exempel på distribution behöver du bara platsen för källkoden, som tillhandahålls efter behov.

Funktionella tjänster som ska distribueras
PetClinic är indelade i 4-kärniga mikrotjänster. Alla är program som kan distribueras oberoende av varandra och ordnas efter företagsdomäner.
- Tjänsten Customers: Innehåller allmän användarindatalogik och validering, inklusive information om husdjur och ägare (namn, adress, stad, telefon).
- Besökstjänst: Lagrar och visar besöksinformation för varje husdjurs kommentarer.
- Vets-tjänsten: Lagrar och visar information om barn, inklusive namn och skad.
- API Gateway: API-gatewayen är en enda startpunkt i systemet som används för att hantera begäranden och dirigera dem till en lämplig tjänst eller för att anropa flera tjänster och aggregera resultaten. De tre kärntjänsterna exponerar ett externt API för klienten. I verkliga system kan antalet funktioner växa mycket snabbt med systemkomplexitet. Hundratals tjänster kan vara inblandade i att återge en komplex webbsida.
Infrastrukturtjänster som Azure Spring Cloud
Det finns flera vanliga mönster i distribuerade system som stöder kärntjänster. Azure Spring Cloud innehåller verktyg som förbättrar Spring Boot program för att implementera följande mönster:
- Konfigurationstjänst: Azure Spring Cloud Config är en vågrätt skalbar central konfigurationstjänst för distribuerade system. Den använder en ansluten lagringsplats som för närvarande stöder lokal lagring, Git och Subversion.
- Tjänstidentifiering: Den möjliggör automatisk identifiering av nätverksplatser för tjänstinstanser, som kan ha dynamiskt tilldelade adresser på grund av automatisk skalning, fel och uppgraderingar.
Databaskonfiguration
I standardkonfigurationen använder Pet Clinic en minnes in-memory-databas (HSQLDB) som fylls i vid start med data. En liknande konfiguration tillhandahålls för MySql om en beständig databaskonfiguration krävs. Ett beroende för Connector/J, MySQL JDBC-drivrutinen, ingår redan i pom.xml filerna.
Exempelanvändning av PetClinic
Fullständig implementeringsinformation finns i vår förk av PetClinic. Exemplen refererar till källkoden efter behov.