Introduzione all'app di esempio

Nota

Le prime 50 ore vCPU e 100 GB di memoria sono gratuite ogni mese. Per altre informazioni, vedere Riduzione dei prezzi - Azure Spring Apps fa di più, meno costi! nel blog di App in Azure.

Nota

Azure Spring Apps è il nuovo nome del servizio Azure Spring Cloud. Anche se il servizio ha un nuovo nome, il nome precedente verrà visualizzato in alcune posizioni per un po' mentre si lavora per aggiornare gli asset, ad esempio screenshot, video e diagrammi.

Questo articolo si applica a: ✔️ Basic/Standard ✔️ Enterprise

In questa guida introduttiva si usa l'app di esempio nota PetClinic per illustrare come distribuire app nel servizio Azure Spring Apps. L'esempio Pet Clinic illustra il modello di architettura del microservizio ed evidenzia la suddivisione dei servizi. Viene illustrato come distribuire i servizi in Azure con funzionalità di Azure Spring Apps, ad esempio l'individuazione dei servizi, il server di configurazione, i log, le metriche, la traccia distribuita e il supporto degli strumenti intuitivi per gli sviluppatori.

Per seguire gli esempi di distribuzione di Azure Spring Apps, è necessario solo il percorso del codice sorgente, fornito in base alle esigenze.

Il diagramma seguente mostra l'architettura dell'applicazione PetClinic.

Diagram that shows the architecture of the PetClinic app.

Nota

Quando l'applicazione è ospitata nel piano Enterprise di Azure Spring Apps, il servizio di configurazione dell'applicazione gestito per VMware Tanzu assume il ruolo di Spring Cloud Config Server e il Registro di sistema del servizio VMware Tanzu gestito assume il ruolo di Eureka Service Discovery senza apportare modifiche al codice all'applicazione. Per altre informazioni, vedere la sezione Servizi di infrastruttura ospitati da Azure Spring Apps più avanti in questo articolo.

Servizi funzionali da distribuire

L'applicazione PetClinic è scomposta in quattro app Spring di base. Sono tutti applicazioni distribuibili in modo indipendente organizzate per dominio aziendale.

  • Servizio clienti: contiene la logica di input e la convalida in generale, tra cui informazioni su animali domestici e proprietari (nome, indirizzo, città, telefono).
  • Servizio visite: archivia e mostra le informazioni sulle visite per i commenti di ogni animale domestico.
  • Servizio veterinari: archivia e mostra le informazioni dei veterinari, tra cui nomi e specializzazioni.
  • Gateway API: il gateway API è un singolo punto di ingresso nel sistema, usato per gestire le richieste e indirizzarle a un servizio appropriato o per richiamare più servizi e aggregare i risultati. I tre servizi di base espongono un'API esterna al client. Nei sistemi reali il numero di funzioni può crescere rapidamente man mano che aumenta la complessità del sistema. Nel rendering di una pagina Web complessa potrebbero essere coinvolti centinaia di servizi.

Servizi di infrastruttura ospitati da Azure Spring Apps

I sistemi distribuiti presentano diversi modelli comuni che supportano i servizi di base. Azure Spring Cloud offre strumenti che consentono di ottimizzare le applicazioni Spring Boot per l'implementazione dei modelli seguenti:

  • Servizio di configurazione delle applicazioni per Tanzu: il servizio di configurazione dell'applicazione per Tanzu è uno dei componenti commerciali di VMware Tanzu. Consente la gestione delle risorse ConfigMap Kubernetes native popolate da proprietà definite in uno o più repository Git.
  • Registro dei servizi Tanzu: Tanzu Service Registry è uno dei componenti commerciali di VMware Tanzu. Fornisce alle app un'implementazione del modello di individuazione dei servizi, uno dei principi chiave di un'architettura basata su Spring. Le app possono usare il Registro di sistema del servizio per individuare e chiamare in modo dinamico i servizi registrati.

Configurazione del database

Nella configurazione predefinita, Pet Clinic usa un database in memoria (HSQLDB) popolato all'avvio con i dati. Una configurazione simile viene fornita per MySQL se è necessaria una configurazione di database persistente. Una dipendenza per Connessione or/J, il driver JDBC MySQL, è già inclusa nei file pom.xml.

Utilizzo di esempio di PetClinic

Per informazioni dettagliate complete sull'implementazione, vedere il fork di PetClinic. Gli esempi fanno riferimento al codice sorgente necessario.

Passaggi successivi