Inleiding tot de voorbeeld-app
In deze reeks quickstarts wordt een voorbeeld-app gebruikt die bestaat uit twee microservices om te laten zien hoe u een .NET Core Steeltoe-app kunt implementeren in de Azure Spring Cloud-service. U gebruikt Azure Spring Cloud-functies zoals servicedetectie, configuratieserver, logboeken, metrische gegevens en gedistribueerde tracering.
Functionele services
De voorbeeld-app bestaat uit twee microservices:
De service
planet-weather-providerretourneert een weerbericht in reactie op een HTTP-aanvraag waarin de naam van de planeet is opgegeven. Het kan bijvoorbeeld 'zeer warm' retourneren voor de planeet Mercurius. Hiermee worden de weergegevens van de configuratieserver opgehaald. De configuratieserver haalt de weergegevens op uit een YAML-bestand in een Git-opslagplaats, bijvoorbeeld:MercuryWeather: very warm VenusWeather: quite unpleasant MarsWeather: very cool SaturnWeather: a little bit sandyDe service
solar-system-weatherretourneert gegevens voor vier planeten in reactie op een HTTP-aanvraag. De gegevens worden opgehaald door vier HTTP-aanvragen te verzenden naarplanet-weather-provider. Er wordt gebruikgemaakt van de Eureka-serverdetectieservice omplanet-weather-provideraan te roepen. Deze retourneert JSON, bijvoorbeeld:[{ "Key": "Mercury", "Value": "very warm" }, { "Key": "Venus", "Value": "quite unpleasant" }, { "Key": "Mars", "Value": "very cool" }, { "Key": "Saturn", "Value": "a little bit sandy" }]
In het volgende diagram ziet u de architectuur van de voorbeeld-app:
Codeopslagplaats
De voorbeeld-app bevindt zich in de map steeltoe-sample van de opslagplaats Azure-Samples/Azure-Spring-Cloud-Samples op GitHub.
De instructies in de volgende quickstarts verwijzen naar de broncode waar nodig.
In deze quickstart gebruiken we de microservicesversie van de bekende voorbeeld-app PetClinic die laat zien hoe u apps implementeert in de Azure Spring Cloud service. Het pet Clinic-voorbeeld laat het patroon van de microservicearchitectuur zien en markeert de uitsplitsing van services. U ziet hoe services worden geïmplementeerd in Azure met Azure Spring Cloud-mogelijkheden, waaronder servicedetectie, configuratieserver, logboeken, metrische gegevens, gedistribueerde tracering en ondersteuning voor ontwikkelaarsvriendelijke hulpprogramma's.
Als u de voorbeelden van Azure Spring Cloud-implementatie wilt volgen, hebt u alleen de locatie van de broncode nodig. Indien nodig wordt deze locatie opgegeven.

Functionele services die moeten worden geïmplementeerd
PetClinic is ontledd in microservices met vier kernen. Dit zijn allemaal toepassingen die onafhankelijk kunnen worden geïmplementeerd, georganiseerd op bedrijfsdomein.
- Klantenservice: bevat algemene invoerlogica en validatie voor gebruikers, inclusief informatie over huisdieren en eigenaren (naam, adres, plaats, telefoon).
- Bezoekenservice: slaat informatie over bezoeken op en toont deze voor de opmerkingen van elke huisdieren.
- Vets-service: slaat de informatie van Den Op en toont deze, inclusief namen en specialisaties.
- API-gateway: de API-gateway is een enkel ingangspunt in het systeem, dat wordt gebruikt om aanvragen te verwerken en ze door te sturen naar een geschikte service of om meerdere services aan te roepen en de resultaten te aggregeren. De drie kernservices stellen een externe API beschikbaar voor de client. In de praktijk kan het aantal functies in een systeem zeer snel toenemen naarmate een systeem complexer wordt. Er kunnen honderden services betrokken zijn bij het weergeven van één complexe webpagina.
Infrastructuurservices die worden gehost door Azure Spring Cloud
Er zijn verschillende algemene patronen in gedistribueerde systemen die ondersteuning bieden voor kernservices. Azure Spring Cloud biedt hulpprogramma's die de Spring Boot verbeteren om de volgende patronen te implementeren:
- Configuratieservice: Azure Spring Cloud Config is een horizontaal schaalbare gecentraliseerde configuratieservice voor gedistribueerde systemen. De service maakt gebruik van een pluggable opslagplaats die momenteel ondersteuning biedt voor lokale opslag, Git en Subversion.
- Servicedetectie: hiermee kunt u automatisch netwerklocaties voor service-exemplaren detecteren, die dynamisch toegewezen adressen kunnen hebben vanwege automatisch schalen, fouten en upgrades.
Databaseconfiguratie
In de standaardconfiguratie gebruikt Pet Clinic een in-memory database (HSQLDB) die bij het opstarten wordt gevuld met gegevens. Er wordt een vergelijkbare installatie voor MySql opgegeven als er een permanente databaseconfiguratie nodig is. Een afhankelijkheid voor Connector/J, het MySQL JDBC-stuurprogramma, is al opgenomen in de pom.xml bestanden.
Voorbeeldgebruik van PetClinic
Zie onze fork van PetClinic voor volledige implementatiedetails. De voorbeelden verwijzen naar de broncode, indien nodig.