Migrace aplikací Spring Cloud do Azure Container Apps
Tato příručka popisuje, o čem byste měli vědět, když chcete migrovat existující aplikaci Spring Cloud, která se bude spouštět ve službě Azure Container Apps.
Před migrací
Pokud chcete zajistit úspěšnou migraci, dokončete kroky posouzení a inventáře popsané v následujících částech.
Pokud nemůžete splnit žádné z těchto požadavků na předběžnou migraci, projděte si následující doprovodné příručky k migraci:
- Migrace spustitelných webových aplikací JAR do kontejnerů ve službě Azure Kubernetes Service (plánované pokyny)
- Migrace spustitelných webových aplikací JAR do služby Azure Virtual Machines (plánované pokyny)
Kontrola komponent aplikace
Určení, jestli a jak se používá systém souborů
Vyhledejte všechny instance, ve kterých vaše služby zapisují nebo čtou z místního systému souborů. Určete, kde se krátkodobé/dočasné soubory zapisují a čtou a kde se zapisují a čtou dlouhodobé soubory.
Azure Container Apps nabízí několik typů úložiště. Dočasné úložiště může číst a zapisovat dočasná data a být k dispozici pro spuštěný kontejner nebo repliku. Azure File poskytuje trvalé úložiště a dá se sdílet napříč několika kontejnery. Další informace najdete v tématu Použití připojení úložiště v Azure Container Apps.
Statický obsah jen pro čtení
Pokud vaše aplikace aktuálně obsluhuje statický obsah, potřebujete pro ni alternativní umístění. Možná budete chtít přesunout statický obsah do služby Azure Blob Storage a přidat Azure CDN pro bleskově rychlé stahování globálně. Další informace najdete v tématu Hostování statického webu ve službě Azure Storage a rychlém startu: Integrace účtu úložiště Azure s Azure CDN.
Dynamicky publikovaný statický obsah
Pokud vaše aplikace podporuje statický obsah bez ohledu na to, jestli je aplikace nahraná nebo vygenerovaná samotnou aplikací, která po jejím vytvoření zůstane beze změny, můžete integrovat službu Azure Blob Storage a Azure CDN. Funkci Azure Functions můžete také použít ke správě nahrávání a aktivaci aktualizací CDN v případě potřeby. Pro vaše použití jsme poskytli ukázkovou implementaci na GitHubu – Uploading and CDN-preloading static content with Azure Functions.
Určení, jestli některá ze služeb obsahuje kód specifický pro operační systém
Pokud vaše aplikace obsahuje jakýkoli kód se závislostmi na hostitelském operačním systému, musíte ho refaktorovat, abyste tyto závislosti odebrali. Může být například nutné nahradit jakékoli použití /
cest systému souborů nebo \
v cestě File.Separator
k systému souborů nebo Paths.get
v případě, že je vaše aplikace spuštěná ve Windows.
Přepnutí na podporovanou platformu
Pokud soubor Dockerfile vytvoříte ručně a nasadíte kontejnerizovanou aplikaci do Azure Container Apps, převezmete úplnou kontrolu nad nasazením včetně verzí JRE/JDK.
Pro nasazení z artefaktů nabízí Azure Container Apps také konkrétní verze Javy (8, 11, 17 a 21) a konkrétní verze komponent Spring Boot a Spring Cloud. Pokud chcete zajistit kompatibilitu, nejprve migrujte aplikaci do jedné z podporovaných verzí Javy v aktuálním prostředí a pokračujte zbývajícími kroky migrace. Výslednou konfiguraci plně otestujte. V těchto testech použijte nejnovější stabilní verzi své linuxové distribuce.
Poznámka:
Toto ověření je obzvláště důležité, pokud se váš aktuální server provozuje na nepodporované sadě JDK (například Oracle JDK nebo IBM OpenJ9).
Aktuální verzi jazyka Java získáte tak, že se přihlásíte k produkčnímu serveru a spustíte následující příkaz:
java -version
Informace o podporovaných verzích Javy, Spring Boot a Spring Cloudu a pokyny k aktualizaci najdete v přehledu Javy v Azure Container Apps.
Identifikace verzí Spring Bootu
Prozkoumejte závislosti migrovaných aplikací a zjistěte její verzi Spring Bootu.
Maven
V projektech Maven se verze Spring Boot obvykle nachází v <parent>
prvku souboru POM:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.3.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
Gradle
V projektech Gradle se verze Spring Boot obvykle nachází v plugins
části jako verze org.springframework.boot
modulu plug-in:
plugins {
id 'org.springframework.boot' version '3.3.3'
id 'io.spring.dependency-management' version '1.1.6'
id 'java'
}
Pro všechny aplikace používající verze Spring Boot starší než 3.x postupujte podle průvodce migrací Spring Boot 2.0 nebo Průvodce migrací Spring Boot 3.0 a aktualizujte je na podporovanou verzi Spring Boot. Podporované verze najdete v dokumentaci k Spring Cloudu .
Identifikace verzí Spring Cloudu
Prozkoumejte závislosti jednotlivých aplikací, které migrujete, a určete verzi komponent Spring Cloudu, které používá.
Maven
V projektech Maven je verze Spring Cloudu obvykle nastavená ve spring-cloud.version
vlastnosti:
<properties>
<spring-cloud.version>2023.0.2</spring-cloud.version>
</properties>
Gradle
V projektech Gradle je verze Spring Cloudu obvykle nastavená v bloku "extra properties":
ext {
set('springCloudVersion', "2023.0.2")
}
Je potřeba aktualizovat všechny aplikace tak, aby používaly podporované verze Spring Cloudu. Podporované verze najdete v dokumentaci k Spring Cloudu .
Identifikace řešení agregace protokolů
Identifikujte všechna řešení agregace protokolů, která používají aplikace, které migrujete. Při migraci musíte nakonfigurovat nastavení diagnostiky, aby byly protokolované události dostupné pro spotřebu. Další informace najdete v části Zajištění protokolování konzoly a konfigurace nastavení diagnostiky.
Identifikace agentů správy výkonu aplikací (APM)
Identifikujte agenty správy výkonu aplikací používané vašimi aplikacemi. Azure Containers Apps nenabízí integrovanou podporu integrace APM. Musíte připravit image kontejneru nebo integrovat nástroj APM přímo do kódu. Pokud chcete měřit výkon aplikace, ale ještě jste neintegrovanou žádnou funkci APM, zvažte použití Aplikace Azure lication Insights. Další informace najdete v části Migrace .
Inventář externích prostředků
Identifikujte externí prostředky, například zdroje dat, zprostředkovatele zpráv JMS a adresy URL dalších služeb. V aplikacích Spring Cloud obvykle najdete konfiguraci těchto prostředků v jednom z následujících umístění:
- Ve složce src/main/resources se v souboru obvykle nazývá application.properties nebo application.yml.
- V úložišti Spring Cloud Config Server, které jste identifikovali v předchozím kroku.
Databáze
U aplikace Spring Boot se připojovací řetězec obvykle zobrazují v konfiguračních souborech, pokud závisí na externí databázi. Tady je příklad ze souboru application.properties:
spring.datasource.url=jdbc:mysql://localhost:3306/mysql_db
spring.datasource.username=dbuser
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
Tady je příklad ze souboru application.yaml:
spring:
data:
mongodb:
uri: mongodb://mongouser:deepsecret@mongoserver.contoso.com:27017
Další možné scénáře konfigurace najdete v dokumentaci ke službě Spring Data:
Zprostředkovatelé zpráv JMS
Identifikujte zprostředkovatele nebo zprostředkovatele používané v manifestu sestavení (obvykle pom.xml nebo soubor build.gradle ) pro příslušné závislosti.
Aplikace Spring Boot využívající ActiveMQ by například obvykle obsahovala tuto závislost v souboru pom.xml :
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-activemq</artifactId>
</dependency>
Aplikace Spring Boot využívající komerční zprostředkovatele obvykle obsahují závislosti přímo v knihovnách ovladačů JMS zprostředkovatelů. Tady je příklad ze souboru build.gradle:
dependencies {
...
compile("com.ibm.mq:com.ibm.mq.allclient:9.4.0.5")
...
}
Jakmile identifikujete používaného zprostředkovatele nebo zprostředkovatele, vyhledejte odpovídající nastavení. V aplikacích Spring Cloud je obvykle najdete v souborech application.properties a application.yml v adresáři aplikace nebo v úložišti Spring Cloud Config Server.
Poznámka:
Microsoft doporučuje používat nejbezpečnější dostupný tok ověřování. Tok ověřování popsaný v tomto postupu, například pro databáze, mezipaměti, zasílání zpráv nebo služby AI, vyžaduje velmi vysoký stupeň důvěryhodnosti v aplikaci a nese rizika, která nejsou přítomna v jiných tocích. Tento tok používejte pouze v případě, že nejsou možné zabezpečit možnosti, jako jsou spravované identity pro připojení bez hesla nebo bez klíčů. V případě místních operací počítačů upřednostňujete identity uživatelů pro připojení bez hesla nebo bez klíčů.
Tady je příklad ActiveMQ ze souboru application.properties :
spring.activemq.brokerurl=broker:(tcp://localhost:61616,network:static:tcp://remotehost:61616)?persistent=false&useJmx=true
spring.activemq.user=admin
spring.activemq.password=<password>
Další informace o konfiguraci ActiveMQ najdete v dokumentaci ke zasílání zpráv Spring Boot.
Tady je příklad IBM MQ ze souboru application.yaml :
ibm:
mq:
queueManager: qm1
channel: dev.ORDERS
connName: localhost(14)
user: admin
password: <password>
Další informace o konfiguraci IBM MQ naleznete v dokumentaci k komponentám IBM MQ Spring.
Identifikace externích mezipamětí
Identifikujte všechny používané externí mezipaměti. Redis se často používá prostřednictvím Spring Data Redis. Informace o konfiguraci najdete v dokumentaci Spring Data Redis .
Zjistěte, jestli se data relace ukládají do mezipaměti prostřednictvím springové relace, a to vyhledáním příslušné konfigurace (v Javě nebo XML).
Zprostředkovatelé identit
Identifikujte všechny zprostředkovatele identit a všechny aplikace Spring Cloud, které vyžadují ověřování nebo autorizaci. Informace o tom, jak nakonfigurovat zprostředkovatele identit, najdete v následujících zdrojích informací:
- Informace o konfiguraci OAuth2 najdete v rychlém startu Spring Cloud Security.
- Informace o konfiguraci Auth0 Spring Security najdete v dokumentaci k Auth0 Spring Security.
- Informace o konfiguraci PingFederate Spring Security najdete v pokynech pro Auth0 PingFederate.
Prostředky nakonfigurované prostřednictvím aplikační služby VMware Tanzu (TAS) (dříve Pivotal Cloud Foundry)
U aplikací spravovaných pomocí taS jsou externí prostředky, včetně výše popsaných prostředků, často nakonfigurované prostřednictvím vazeb služby TAS. Pokud chcete prozkoumat konfiguraci těchto prostředků, zobrazte proměnnou pro aplikaci pomocí rozhraní příkazového řádku VCAP_SERVICES
TAS (Cloud Foundry).
# Log into TAS, if needed (enter credentials when prompted)
cf login -a <API endpoint>
# Set the organization and space containing the application, if not already selected during login.
cf target org <organization name>
cf target space <space name>
# Display variables for the application
cf env <Application Name>
Prozkoumejte proměnnou VCAP_SERVICES
pro nastavení konfigurace externích služeb vázaných na aplikaci. Další informace najdete v dokumentaci ke službě TAS (Cloud Foundry).
Všechny ostatní externí prostředky
Pro tuto příručku není možné zdokumentovat všechny možné externí závislosti. Po migraci je vaší zodpovědností ověřit, že můžete vyhovět každé externí závislosti vaší aplikace.
Zdroje konfigurace inventáře a tajné kódy
Inventarizace hesel a zabezpečených řetězců
Zkontrolujte všechny vlastnosti a konfigurační soubory a všechny proměnné prostředí v produkčních nasazeních pro všechny tajné řetězce a hesla. V aplikaci Spring Cloud můžete tyto řetězce obvykle najít v souboru application.properties nebo application.yml v jednotlivých službách nebo v úložišti Spring Cloud Config Server.
Inventarizace certifikátů
Zdokumentujte všechny certifikáty používané pro veřejné koncové body SSL nebo komunikaci s back-endovými databázemi a dalšími systémy. Všechny certifikáty na produkčních serverech zobrazíte spuštěním následujícího příkazu:
keytool -list -v -keystore <path to keystore>
Určení, jestli se používá Spring Cloud Vault
Pokud k ukládání tajných kódů a přístupu k nim používáte Spring Cloud Vault, identifikujte záložní úložiště tajných kódů (například HashiCorp Vault nebo CredHub). Pak identifikujte všechny tajné kódy používané kódem aplikace.
Vyhledání zdroje konfiguračního serveru
Pokud vaše aplikace používá Spring Cloud Config Server, určete, kde je konfigurace uložená. Toto nastavení obvykle najdete v souboru bootstrap.yml nebo bootstrap.properties nebo někdy v souboru application.yml nebo application.properties . Nastavení vypadá jako v následujícím příkladu:
spring.cloud.config.server.git.uri: file://${user.home}/spring-cloud-config-repo
Git se sice nejčastěji používá jako backingový úložiště dat serveru Spring Cloud Config Server, jak je znázorněno výše, ale může být používán jeden z dalších možných back-endů. Informace o dalších back-endech, jako jsou relační databáze (JDBC), SVN a místní systém souborů, najdete v dokumentaci k serveru Spring Cloud Config Server.
Kontrola architektury nasazení
Zdokumentujte požadavky na hardware pro každou službu.
Pro každou z vašich služeb Spring Cloud (bez konfiguračního serveru, registru nebo brány) si zdokumentujte následující informace:
- Počet spuštěných instancí.
- Počet procesorů přidělených jednotlivým instancím.
- Velikost paměti RAM přidělená jednotlivým instancím.
Zdokumentovat geografickou replikaci nebo distribuci
Určete, jestli jsou aplikace Spring Cloud aktuálně distribuovány mezi několik oblastí nebo datových center. Zdokumentujte požadavky na dobu provozu a sla pro aplikace, které migrujete.
Identifikace klientů, kteří obejdou registr služby
Identifikujte všechny klientské aplikace, které volají některou ze služeb, které se mají migrovat bez použití registru služby Spring Cloud. Po migraci už takové vyvolání nebude možné. Před migrací aktualizujte tyto klienty tak, aby používali Spring Cloud OpenFeign .
Migrace
Odebrání omezených konfigurací
Prostředí Azure Container Apps nabízí spravovaný Server Eureka, Spring Cloud Config Server a správce. Když je aplikace svázaná s komponentou Java, služba Azure Container Apps vloží související vlastnosti jako systémové proměnné prostředí. Podle návrhu externalizované konfigurace Spring Boot se vlastnosti aplikace definované v kódu nebo zabalené v artefaktech přepíší proměnnými systémového prostředí.
Pokud nastavíte jednu z následujících vlastností pomocí argumentu příkazového řádku, systémové vlastnosti Jazyka Java nebo proměnné prostředí kontejneru, musíte ji odebrat, abyste se vyhnuli konfliktům a neočekávanému chování:
SPRING_CLOUD_CONFIG_COMPONENT_URI
SPRING_CLOUD_CONFIG_URI
SPRING_CONFIG_IMPORT
eureka.client.fetch-registry
eureka.client.service-url.defaultZone
eureka.instance.prefer-ip-address
eureka.client.register-with-eureka
SPRING_BOOT_ADMIN_CLIENT_INSTANCE_PREFER-IP
SPRING_BOOT_ADMIN_CLIENT_URL
Vytvoření spravovaného prostředí a aplikací Azure Container Apps
Zřízení aplikace Azure Container Apps ve vašem předplatném Azure v existujícím spravovaném prostředí nebo vytvoření nové aplikace pro každou službu, kterou migrujete. Aplikace spuštěné jako registr Spring Cloud a konfigurační servery nemusíte vytvářet. Další informace najdete v článku Rychlý start: Nasazení první aplikace kontejneru s využitím webu Azure Portal.
Příprava spring cloudového konfiguračního serveru
Nakonfigurujte konfigurační server v komponentě Azure Container Apps for Spring. Další informace najdete v tématu Konfigurace nastavení pro komponentu Konfigurační server for Spring v Azure Container Apps.
Poznámka:
Pokud je vaše aktuální úložiště Spring Cloud Config v místním systému souborů nebo v místním prostředí, musíte nejprve migrovat nebo replikovat konfigurační soubory do cloudového úložiště, jako je GitHub, Azure Repos nebo BitBucket.
Zajištění protokolování konzoly a konfigurace nastavení diagnostiky
Nakonfigurujte protokolování, abyste měli jistotu, že se veškerý výstup směruje do konzoly a ne do souborů.
Po nasazení aplikace do Azure Container Apps můžete nakonfigurovat možnosti protokolování v prostředí Container Apps tak, aby definovaly jeden nebo více cílů protokolů. Mezi tyto cíle patří Azure Monitor Log Analytics, Centrum událostí Azure nebo dokonce jiná řešení monitorování třetích stran. Máte také možnost zakázat data protokolu a zobrazit protokoly pouze za běhu. Podrobné pokyny ke konfiguraci najdete v tématu Možnosti úložiště protokolů a monitorování v Azure Container Apps.
Konfigurace trvalého úložiště
Pokud některá část aplikace čte nebo zapisuje do místního systému souborů, musíte nakonfigurovat trvalé úložiště tak, aby nahradilo místní systém souborů. Cestu, kterou chcete připojit v kontejneru, můžete zadat pomocí nastavení aplikace a zarovnat ji s cestou, kterou vaše aplikace používá. Další informace najdete v tématu Použití připojení úložiště v Azure Container Apps.
Migrace tajných kódů Služby Spring Cloud Vault do služby Azure KeyVault
Tajné kódy můžete vkládat přímo do aplikací prostřednictvím Springu pomocí úvodní sady Spring Boot služby Azure KeyVault. Další informace najdete v tématu Použití úvodní sady Spring Boot pro Azure Key Vault.
Poznámka:
Migrace může vyžadovat přejmenování některých tajných kódů. Odpovídajícím způsobem aktualizujte kód aplikace.
Migrace všech certifikátů do služby KeyVault
Azure Containers Apps podporuje zabezpečenou komunikaci mezi aplikacemi. Vaše aplikace nemusí spravovat proces navazování zabezpečené komunikace. Privátní certifikát můžete nahrát do Azure Container Apps nebo použít bezplatný spravovaný certifikát poskytovaný službou Azure Container Apps. Použití služby Azure Key Vault ke správě certifikátů je doporučeným přístupem. Další informace najdete v tématu Certifikáty v Azure Container Apps.
Konfigurace integrací správy výkonu aplikací (APM)
Pokud jste už v kontejneru nakonfigurovali proměnné související s APM, stačí jen zajistit, aby bylo možné navázat připojení k cílové platformě APM. Pokud konfigurace APM odkazuje na proměnné prostředí z kontejneru, musíte v Azure Container Apps odpovídajícím způsobem nastavit proměnné prostředí runtime. Citlivé informace, jako je připojovací řetězec, by se měly bezpečně zpracovávat. Můžete ho buď zadat jako tajný klíč, nebo odkazovat na tajný klíč uložený ve službě Azure Key Vault.
Konfigurace tajných kódů pro jednotlivé služby a externalizovaných nastavení
Nastavení konfigurace můžete do každého kontejneru vložit jako proměnné prostředí. Všechny změny v proměnných vytvoří novou revizi stávající aplikace. Tajné kódy jsou páry klíč-hodnota a zůstávají platné ve všech revizích.
Migrace a povolení zprostředkovatele identity
Pokud některá z aplikací Spring Cloud vyžaduje ověřování nebo autorizaci, použijte následující pokyny, abyste zajistili, že jsou nakonfigurované pro přístup ke zprostředkovateli identity:
- Pokud je zprostředkovatelem identity ID Microsoft Entra, neměly by být nutné žádné změny.
- Pokud je zprostředkovatelem identity doménová struktura místní Active Directory, zvažte implementaci řešení hybridní identity s ID Microsoft Entra. Pokyny najdete v dokumentaci k hybridní identitě.
- Pokud je zprostředkovatelem identity jiné místní řešení, například PingFederate, projděte si vlastní instalaci tématu Microsoft Entra Connect a nakonfigurujte federaci s ID Microsoft Entra. Případně zvažte použití Spring Security k použití zprostředkovatele identity prostřednictvím OAuth2/OpenID Connect nebo SAML.
Aktualizace klientských aplikací
Aktualizujte konfiguraci všech klientských aplikací tak, aby používaly publikované koncové body Azure Container Apps pro migrované aplikace.
Po migraci
Teď, když jste dokončili migraci, ověřte, že vaše aplikace funguje podle očekávání. Aplikaci pak můžete nastavit jako nativní pro cloud pomocí následujících doporučení.
Zvažte možnost, aby vaše aplikace fungovala s registrem Spring Cloud. Tato komponenta umožňuje dynamicky zjišťovat vaši aplikaci jinými nasazenými aplikacemi a klienty Spring. Další informace najdete v tématu Konfigurace nastavení pro komponentu Eureka Server for Spring v Azure Container Apps. Potom upravte všechny klienty aplikace tak, aby používaly Nástroj pro vyrovnávání zatížení klienta Spring. Spring Client Load Balancer umožňuje klientovi získat adresy všech spuštěných instancí aplikace a najít instanci, která funguje, pokud dojde k poškození nebo nereagování jiné instance. Další informace najdete v tématu Spring Tips: Spring Cloud Load Balancer na spring blogu.
Místo toho, aby byla vaše aplikace veřejná, zvažte přidání instance brány Spring Cloud. Brána Spring Cloud poskytuje jeden koncový bod pro všechny aplikace nasazené ve vašem prostředí Azure Container Apps. Pokud už je brána Spring Cloud nasazená, ujistěte se, že je nakonfigurované pravidlo směrování pro směrování provozu do nově nasazené aplikace.
Zvažte přidání spring cloudového konfiguračního serveru, který centrálně spravuje a spravuje konfiguraci správy verzí pro všechny aplikace Spring Cloud. Nejprve vytvořte úložiště Git pro uložení konfigurace a konfiguraci instance aplikace tak, aby ji používala. Další informace najdete v tématu Konfigurace nastavení pro komponentu Konfigurační server for Spring v Azure Container Apps. Pak proveďte migraci konfigurace pomocí následujících kroků:
V adresáři src/main/resources aplikace vytvořte soubor bootstrap.yml s následujícím obsahem:
spring: application: name: <your-application-name>
V konfiguračním úložišti Git vytvořte <soubor your-application-name>.yml , kde
your-application-name
je stejný jako v předchozím kroku. Přesuňte nastavení z application.yml souboru v souboru src/main/resources do nového souboru, který jste vytvořili. Pokud byla nastavení dříve v souboru .properties , nejprve je převeďte na YAML. K provedení tohoto převodu můžete najít online nástroje nebo moduly plug-in IntelliJ.Ve výše uvedeném adresáři vytvořte soubor application.yml . Tento soubor můžete použít k definování nastavení a prostředků, které jsou sdíleny mezi všemi aplikacemi v prostředí Azure Container Apps. Tato nastavení obvykle zahrnují zdroje dat, nastavení protokolování, konfiguraci ovladače Spring Boot a další.
Potvrďte a nasdílete tyto změny do úložiště Git.
Odeberte soubor application.properties nebo application.yml z aplikace.
Zvažte přidání komponenty spravované správcem pro Spring, aby bylo možné povolit rozhraní pro správu webových aplikací Spring Boot, které zpřístupňují koncové body poháněcího zařízení. Další informace najdete v tématu Konfigurace komponenty Spring Boot Admin v Azure Container Apps.
Zvažte přidání kanálu nasazení pro automatické konzistentní nasazení. Pokyny jsou k dispozici pro Azure Pipelines a pro GitHub Actions.
Zvažte použití revizí, popisků revizí a váhy příchozího přenosu dat kontejneru, abyste umožnili modré zelené nasazení, které umožňuje otestovat změny kódu v produkčním prostředí předtím, než budou zpřístupněny některým nebo všem koncovým uživatelům. Další informace najdete v tématu Blue-Green Deployment in Azure Container Apps.
Zvažte přidání vazeb služeb pro připojení aplikace k podporovaným databázím Azure. Tyto vazby služeb by eliminovaly nutnost poskytovat informace o připojení, včetně přihlašovacích údajů, aplikacím Spring Cloud.
Zvažte povolení vývojového zásobníku Java ke shromažďování základních metrik JVM pro vaše aplikace. Další informace najdete v tématu Metriky Java pro aplikace v Javě v Azure Container Apps.
Zvažte přidání pravidel upozornění a skupin akcí služby Azure Monitor pro rychlé zjišťování a řešení chybových podmínek. Další informace najdete v tématu Nastavení upozornění v Azure Container Apps.
Zvažte replikaci aplikace napříč zónami v oblasti povolením redundance zón Azure Container Apps. Provoz je vyrovnávání zatížení a automaticky směrován na repliky, pokud dojde k výpadku zóny. Další informace o redundantních nastaveních najdete v tématu Spolehlivost v Azure Container Apps.
Zvažte ochranu služby Azure Container Apps před běžným zneužitím a ohrožením zabezpečení pomocí firewallu webových aplikací ve službě Application Gateway. Další informace najdete v tématu Ochrana azure Container Apps pomocí firewallu webových aplikací ve službě Application Gateway.
Pokud vaše aplikace používají starší komponenty Spring Cloud Netflix, zvažte jejich nahrazení aktuálními alternativami, jak je znázorněno v následující tabulce:
Starší verze Aktuální Spring Cloud Eureka Registr služby Spring Cloud Spring Cloud Netflix Zuul Brána Spring Cloud Spring Cloud Netflix Archaius Spring Cloud Config Server Pás karet Spring Cloud Netflix Spring Cloud Load Balancer (nástroj pro vyrovnávání zatížení na straně klienta) Spring Cloud Hystrix Spring Cloud Circuit Breaker + Resilience4J Spring Cloud Netflix Turbína Mikrometr + Prometheus