Inleiding tot de voorbeeld-app

Notitie

De eerste 50 vCPU-uren en 100 GB geheugenuren zijn elke maand gratis. Zie Prijsreductie: Azure Spring Apps kost meer, kost minder! in de Azure-blog apps.

Notitie

Azure Spring Apps is de nieuwe naam voor de Azure Spring Cloud-service. Hoewel de service een nieuwe naam heeft, ziet u de oude naam op sommige plaatsen terwijl we werken aan het bijwerken van assets, zoals schermopnamen, video's en diagrammen.

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.

Diagram that shows the architecture of the PetClinic app.

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:

  • Application Configuration Service voor Tanzu: Application Configuration Service voor Tanzu is een van de commerciële VMware Tanzu-onderdelen. Hiermee kunt u het beheer van systeemeigen Kubernetes ConfigMap-resources inschakelen, die worden ingevuld op basis van eigenschappen die zijn gedefinieerd in een of meer Git-opslagplaatsen.
  • Tanzu-serviceregister: Tanzu-serviceregister is een van de commerciële VMware Tanzu-onderdelen. Het biedt uw apps een implementatie van het Service Discovery-patroon, een van de belangrijkste tenets van een Spring-architectuur. Uw apps kunnen het serviceregister gebruiken om geregistreerde services dynamisch te detecteren en aan te roepen.

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 Verbinding maken or/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.

Volgende stappen