Inleiding tot de voorbeeld-app
Notitie
De Basic-, Standard- en Enterprise-abonnementen worden afgeschaft vanaf medio maart 2025, met een pensioenperiode van 3 jaar. We raden u aan om over te stappen naar Azure Container Apps. Zie de aankondiging over buitengebruikstelling van Azure Spring Apps voor meer informatie.
Het standaardverbruik en het speciale abonnement worden vanaf 30 september 2024 afgeschaft, met een volledige afsluiting na zes maanden. We raden u aan om over te stappen naar Azure Container Apps. Zie Azure Spring Apps Standard-verbruik en toegewezen abonnement migreren naar Azure Container Apps voor meer informatie.
Dit artikel is van toepassing op: ✔️ Basic/Standard ✔️ Enterprise
In deze quickstart gebruiken we de bekende voorbeeld-app PetClinic om te laten zien hoe u apps implementeert in de Azure Spring Apps-service. Het voorbeeld van pet clinic demonstreert het architectuurpatroon van de microservice en markeert de uitsplitsing van de services. U ziet hoe u services implementeert in Azure met mogelijkheden van Azure Spring Apps, zoals servicedetectie, configuratieserver, logboeken, metrische gegevens, gedistribueerde tracering en ondersteuning voor ontwikkelaarsvriendelijke hulpprogramma's.
Als u de voorbeelden van de Azure Spring Apps-implementatie wilt volgen, hebt u alleen de locatie van de broncode nodig. Deze is indien nodig opgegeven.
In het volgende diagram ziet u de architectuur van de PetClinic-toepassing.
Notitie
Wanneer de toepassing wordt gehost in het Azure Spring Apps Enterprise-plan, gaat de beheerde toepassingsconfiguratieservice voor VMware Tanzu ervan uit dat de rol van Spring Cloud-configuratieserver en het beheerde VMware Tanzu-serviceregister de rol van Eureka-servicedetectie accepteert zonder dat er codewijzigingen in de toepassing worden aangebracht. Zie de sectie Infrastructuurservices die worden gehost door Azure Spring Apps verderop in dit artikel voor meer informatie.
Functionele services die moeten worden geïmplementeerd
PetClinic is onderverdeeld in vier kernen van Spring-apps. Dit zijn allemaal toepassingen die onafhankelijk kunnen worden geïmplementeerd, georganiseerd op bedrijfsdomein.
- Klantenservice: bevat algemene invoerlogica en validatie van gebruikers, inclusief informatie over huisdieren en eigenaren (naam, adres, plaats, telefoon).
- Bezoeken service: Slaat en toont bezoeken informatie voor de opmerkingen van elk huisdier.
- Vets service: Slaat en toont dierenartsen informatie, inclusief namen en specialiteiten.
- API Gateway: De API-gateway is één toegangspunt in het systeem, dat wordt gebruikt om aanvragen te verwerken en door te routeren naar een geschikte service of om meerdere services aan te roepen en de resultaten samen te voegen. De drie kernservices maken een externe API beschikbaar voor de client. In echte systemen kan het aantal functies snel groeien met systeemcomplexiteit. Honderden services kunnen betrokken zijn bij het weergeven van één complexe webpagina.
Infrastructuurservices die worden gehost door Azure Spring Apps
Er zijn verschillende algemene patronen in gedistribueerde systemen die kernservices ondersteunen. Azure Spring Apps biedt hulpprogramma's waarmee Spring Boot-toepassingen worden verbeterd om de volgende patronen te implementeren:
- Configuratieservice: Azure Spring Apps-configuratie 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 automatische detectie van netwerklocaties voor service-exemplaren toestaan, die dynamisch toegewezen adressen kunnen hebben vanwege automatisch schalen, fouten en upgrades.
Databaseconfiguratie
In de standaardconfiguratie maakt Pet Clinic gebruik van een in-memory database (HSQLDB) die wordt gevuld bij het opstarten met gegevens. Er is een vergelijkbare installatie beschikbaar voor MySQL 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.