Esercitazione: Usare il dashboard dell'interruttore con App Azure Spring
Articolo
Avviso
Hystrix non è più in fase di sviluppo attivo ed è attualmente in modalità di manutenzione.
Nota
I piani Basic, Standard ed Enterprise saranno deprecati a partire dalla metà di marzo 2025, con un periodo di ritiro di 3 anni. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere l'annuncio di ritiro di Azure Spring Apps.
L'esempio è basato su una copia tramite fork da questo repository.
Clonare il repository di esempio nell'ambiente di sviluppo:
Bash
git clone https://github.com/Azure-Samples/azure-spring-apps-samples.git
cd azure-spring-apps-samples/hystrix-turbine-sample
Compilare le tre applicazioni incluse in questa esercitazione:
user-service: un semplice servizio REST con un singolo endpoint di /personalized/{id}
recommendation-service: un semplice servizio REST con un singolo endpoint di /recommendations, chiamato dal servizio utente.
hystrix-turbine: un servizio dashboard Hystrix per visualizzare i flussi Hystrix e un servizio Turbine che aggrega il flusso delle metriche Hystrix da altri servizi.
Queste app non usano il server di configurazione, quindi non è necessario configurare il server di configurazione per Azure Spring Apps. Creare e distribuire le applicazioni nel modo seguente:
Interfaccia della riga di comando di Azure
az configure --defaults \
group=<resource-group-name> \
spring=<Azure-Spring-Apps-instance-name>az spring app create --name user-service--assign-endpointaz spring app create --name recommendation-serviceaz spring app create --name hystrix-turbine--assign-endpointaz spring app deploy \
--name user-service \
--artifact-path user-service/target/user-service.jar
az spring app deploy \
--name recommendation-service \
--artifact-path recommendation-service/target/recommendation-service.jar
az spring app deploy \
--name hystrix-turbine \
--artifact-path hystrix-turbine/target/hystrix-turbine.jar
Verificare le app
Dopo che tutte le app sono in esecuzione e individuabili, accedere user-service con il percorso https://<Azure-Spring-Apps-instance-name>-user-service.azuremicroservices.io/personalized/1 dal browser. Se user-service è in grado di accedere a recommendation-service, dovrebbe essere visualizzato l'output seguente. Se non funziona, aggiornare la pagina Web alcune volte.
Accedere al dashboard di Hystrix e al flusso di metriche
Eseguire la verifica usando endpoint pubblici o endpoint di test privati.
Uso di endpoint pubblici
Accedere a hystrix-turbine con il percorso https://<SERVICE-NAME>-hystrix-turbine.azuremicroservices.io/hystrix dal browser. La figura seguente mostra il dashboard di Hystrix in esecuzione nell'app.
Copiare l'URL https://<SERVICE-NAME>-hystrix-turbine.azuremicroservices.io/turbine.stream?cluster=default del flusso turbine nella casella di testo e selezionare Monitoraggio flusso. Questa azione visualizza il dashboard. Se nel visualizzatore non viene visualizzato nulla, fare clic sugli endpoint di user-service per generare i flussi.
Nota
In ambiente di produzione, il dashboard di Hystrix e il flusso di metriche non devono essere esposti a Internet.
Uso di endpoint di test privati
I flussi di metriche Hystrix sono accessibili anche da test-endpoint. Come servizio back-end, non è stato assegnato un endpoint pubblico per recommendation-service, ma è possibile visualizzarne le metriche con test-endpoint all'indirizzo https://primary:<KEY>@<SERVICE-NAME>.test.azuremicroservices.io/recommendation-service/default/actuator/hystrix.stream.
Come app Web, il dashboard di Hystrix dovrebbe funzionare su test-endpoint. Se non funziona correttamente, potrebbero esserci due motivi: prima, usando test-endpoint l'URL di base da / a /<APP-NAME>/<DEPLOYMENT-NAME>o, in secondo luogo, l'app Web usa il percorso assoluto per la risorsa statica. Per farlo funzionare su test-endpoint, potrebbe essere necessario modificare manualmente nei <base> file front-end.