Kurz: Použití řídicího panelu jističe s azure Spring Apps
Upozorňující
Hystrix už není v aktivním vývoji a aktuálně je v režimu údržby.
Poznámka:
Plány Basic, Standard a Enterprise budou od poloviny března 2025 vyřazeny ze 3letého období vyřazení. Doporučujeme přejít na Azure Container Apps. Další informace najdete v oznámení o vyřazení Azure Spring Apps.
Od 30. září 2024 bude od 30. září 2024 zastaralý plán s úplným vypnutím po šesti měsících. Doporučujeme přejít na Azure Container Apps. Další informace najdete v tématu Migrace spotřeby Azure Spring Apps Úrovně Standard a vyhrazeného plánu do Azure Container Apps.
Tento článek se vztahuje na: ✔️ Java ❌ C#
Tento článek se vztahuje na: ✔️ Basic/Standard ✔️ Enterprise
V tomto článku se dozvíte, jak používat netflixovou turbínu a Netflix Hystrix v Azure Spring Apps. Spring Cloud Netflix Turbína se běžně používá k agregaci více streamů metrik Netflix Hystrix , aby bylo možné streamy monitorovat v jednom zobrazení pomocí řídicího panelu Hystrix.
Poznámka:
Netflix Hystrix se široce používá v mnoha existujících aplikacích Spring, ale už není v aktivním vývoji. Pokud vyvíjíte nový projekt, měli byste místo toho použít implementace Spring Cloud Circuit Breakeru, jako je odolnost 4j . Od turbíny zobrazené v tomto kurzu nová architektura Spring Cloud Circuit Breaker sjednocuje všechny implementace svého datového kanálu metrik do mikrometrů, které podporuje také Azure Spring Apps. Další informace najdete v tématu Shromažďování metrik jističe Spring Cloud Resilience4J pomocí mikrometru (Preview).
Příprava ukázkových aplikací
Ukázka se rozvětvuje z tohoto úložiště.
Naklonujte ukázkové úložiště do vývojového prostředí:
git clone https://github.com/Azure-Samples/azure-spring-apps-samples.git
cd azure-spring-apps-samples/hystrix-turbine-sample
Sestavte tři aplikace, které jsou v tomto kurzu:
- user-service: Jednoduchá služba REST, která má jeden koncový bod /personalizované/{id}.
- služba doporučení: Jednoduchá služba REST, která má jeden koncový bod /recommendations, který se nazývá služba uživatelem.
- hystrix-turbína: Služba řídicího panelu Hystrix pro zobrazení datových proudů Hystrix a agregace datového proudu metrik Hystrix z jiných služeb.
mvn clean package -D skipTests -f user-service/pom.xml
mvn clean package -D skipTests -f recommendation-service/pom.xml
mvn clean package -D skipTests -f hystrix-turbine/pom.xml
Zřízení instance Azure Spring Apps
Postupujte podle kroků v části Rychlé zřizovací instance Azure Spring Apps: Nasaďte svou první aplikaci do Azure Spring Apps.
Nasazení aplikací do Azure Spring Apps
Tyto aplikace nepoužívají konfigurační server, takže není nutné nastavovat konfigurační server pro Azure Spring Apps. Vytvořte a nasaďte následujícím způsobem:
az configure --defaults \
group=<resource-group-name> \
spring=<Azure-Spring-Apps-instance-name>
az spring app create --name user-service --assign-endpoint
az spring app create --name recommendation-service
az spring app create --name hystrix-turbine --assign-endpoint
az 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
Ověření aplikací
Jakmile jsou všechny aplikace spuštěné a zjistitelné, získejte přístup user-service
k cestě https://<Azure-Spring-Apps-instance-name>-user-service.azuremicroservices.io/personalized/1
z prohlížeče. Pokud má uživatel-služba přístup recommendation-service
, měli byste získat následující výstup. Pokud webová stránka nefunguje, aktualizujte webovou stránku několikrát.
[{"name":"Product1","description":"Description1","detailsLink":"link1"},{"name":"Product2","description":"Description2","detailsLink":"link3"},{"name":"Product3","description":"Description3","detailsLink":"link3"}]
Přístup k řídicímu panelu Hystrix a streamu metrik
Ověřte použití veřejných koncových bodů nebo privátních testovacích koncových bodů.
Použití veřejných koncových bodů
Přístup k turbíně hystrix s cestou https://<SERVICE-NAME>-hystrix-turbine.azuremicroservices.io/hystrix
z prohlížeče. Následující obrázek znázorňuje řídicí panel Hystrix spuštěný v této aplikaci.
Zkopírujte adresu URL https://<SERVICE-NAME>-hystrix-turbine.azuremicroservices.io/turbine.stream?cluster=default
streamu turbíny do textového pole a vyberte Sledovat stream. Tato akce zobrazí řídicí panel. Pokud se v prohlížeči nic nezobrazí, vygenerujte streamy stisknutím user-service
koncových bodů.
Poznámka:
V produkčním prostředí by řídicí panel Hystrix a datový proud metrik neměly být zpřístupněny internetu.
Použití privátních testovacích koncových bodů
Streamy metrik Hystrix jsou také přístupné z test-endpoint
. Jako back-endová služba jsme nepřiřadili veřejný koncový bod recommendation-service
, ale můžeme zobrazit jeho metriky pomocí testovacího koncového bodu na adrese
Jako webová aplikace by měl řídicí panel Hystrix fungovat .test-endpoint
Pokud nefunguje správně, můžou existovat dva důvody: napřed použití test-endpoint
změněné základní adresy URL z /
na /<APP-NAME>/<DEPLOYMENT-NAME>
nebo, za druhé, webová aplikace používá absolutní cestu pro statický prostředek. Abyste mohli pracovat, test-endpoint
budete možná muset ručně upravit <base>
front-endové soubory.