Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Alkalmazáskonfiguráció két kódtárat biztosít a Springhez.
-
spring-cloud-azure-appconfiguration-configSpring Boot-ra van szükség, és függőséget vesz fel aspring-cloud-context. -
spring-cloud-azure-appconfiguration-config-weba Spring Web és a Spring Boot használatát igényli, valamint támogatja a konfigurációfrissítés automatikus ellenőrzését.
Mindkét kódtár támogatja a manuális aktiválást a frissített konfigurációs értékek ellenőrzéséhez.
A frissítés lehetővé teszi a konfigurációs értékek frissítését anélkül, hogy újra kellene indítania az alkalmazást, bár az összes bab @RefreshScope újra létrejön. Ellenőrzi a konfigurált eseményindítók módosításait, beleértve a metaadatokat is. Alapértelmezés szerint a módosítások ellenőrzése és a frissítési időköz közötti minimális idő 30 másodpercre van állítva.
spring-cloud-azure-appconfiguration-config-webAz automatikus frissítés a tevékenység, pontosabban a Spring Web ServletRequestHandledEventtevékenysége alapján aktiválódik. Ha egy ServletRequestHandledEvent nem aktiválódik, az automatikus frissítés akkor sem indítja el a frissítést, spring-cloud-azure-appconfiguration-config-webha a gyorsítótár lejárati ideje lejárt.
Manuális frissítés használata
A manuális frissítés használatához kezdje az alkalmazáskonfigurációt használó Spring Boot-alkalmazással, például a létrehozott alkalmazással az alkalmazáskonfiguráció spring boot rövid útmutatóját követve.
Az alkalmazáskonfiguráció közzéteszi AppConfigurationRefresh, amely ellenőrzi, hogy eltelt-e a frissítési időköz. Ha a frissítési időköz lejárt, a frissítés aktiválódik.
A használathoz
AppConfigurationRefreshfrissítse a HelloControllert.import com.azure.spring.cloud.config.AppConfigurationRefresh; @RestController public class HelloController { private final MessageProperties properties; @Autowired(required = false) private AppConfigurationRefresh refresh; public HelloController(MessageProperties properties) { this.properties = properties; } @GetMapping public String getMessage() throws InterruptedException, ExecutionException { if (refresh != null) { refresh.refreshConfigurations(); } return "Message: " + properties.getMessage(); } }AppConfigurationRefreshAz 'srefreshConfigurations()egyMonoigaz értéket ad vissza, ha egy frissítés aktiválódik, és hamis, ha nem. A hamis azt jelenti, hogy a gyorsítótár lejárati ideje nem járt le, nem történt változás, vagy egy másik szál éppen frissítéseket keres.Feljegyzés
Az olyan kódtárak esetében, mint a Spring WebFlux, amelyek nem blokkoló hívásokat igényelnek,
refreshConfigurations()egy szálba kell burkolni, mivel a konfigurációk betöltése blokkolási hívást igényel.new Thread(() -> refresh.refreshConfigurations()).start();Frissítési frissítés
bootstrap.propertiesengedélyezése:spring.cloud.azure.appconfiguration.stores[0].monitoring.enabled=true spring.cloud.azure.appconfiguration.stores[0].monitoring.refresh-interval= 30s spring.cloud.azure.appconfiguration.stores[0].monitoring.triggers[0].key=sentinelNyissa meg az Azure Portalt , és keresse meg az alkalmazáshoz társított alkalmazáskonfigurációs erőforrást. Válassza a Konfigurációkezelőt a Műveletek területen, és hozzon létre egy új kulcs-érték párot a +Kulcs-érték létrehozásaa következő paraméterek hozzáadásához:
Kulcs Érték őr 0 Egyelőre hagyja üresen a címkét és a tartalomtípust .
Válassza az Alkalmazás lehetőséget.
Állítsa össze a Spring Boot-alkalmazást a Mavennel, és futtassa.
mvn clean package mvn spring-boot:runNyisson meg egy böngészőablakot, és nyissa meg az URL-címet:
http://localhost:8080. Ekkor megjelenik a kulcshoz társított üzenet.A curl használatával tesztelheti az alkalmazást, például:
curl -X GET http://localhost:8080/A dinamikus konfiguráció teszteléséhez nyissa meg az alkalmazáshoz társított Azure-alkalmazás konfigurációs portált. Válassza a Konfigurációkezelőt, és frissítse a megjelenített kulcs értékét, például:
Kulcs Érték /application/config.message Hello – Frissítve Frissítse a korábban létrehozott sentinel kulcsot egy új értékre. Ez a módosítás aktiválja az alkalmazást az összes konfigurációs kulcs frissítésére a frissítési időköz leteltét követően.
Kulcs Érték őr 2 Frissítse kétszer a böngészőlapot az új üzenet megjelenítéséhez. Amikor először aktiválja a frissítést, a második betölti a módosításokat.
Feljegyzés
A kódtár csak a frissítési időköz eltelte után ellenőrzi a módosításokat. Ha a frissítési időköz nem telt el, nem ellenőrzi a módosításokat. Várjon, amíg az időköz átmegy, majd indítsa el a frissítési ellenőrzést.
Automatikus frissítés használata
Az automatikus frissítés használatához kezdje az alkalmazáskonfigurációt használó Spring Boot-alkalmazással, például a létrehozott alkalmazással az alkalmazáskonfiguráció spring boot rövid útmutatóját követve.
Ezután nyissa meg a pom.xml fájlt egy szövegszerkesztőben, és adjon hozzá egy <dependency> fájlt spring-cloud-azure-appconfiguration-config-web a következő kód használatához.
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-appconfiguration-config-web</artifactId>
<version>6.0.0</version>
</dependency>
Frissítési frissítés
application.propertiesengedélyezése:spring.cloud.azure.appconfiguration.stores[0].monitoring.enabled=true spring.cloud.azure.appconfiguration.stores[0].monitoring.refresh-interval= 30s spring.cloud.azure.appconfiguration.stores[0].monitoring.triggers[0].key=sentinelNyissa meg az Azure Portalt , és keresse meg az alkalmazáshoz társított alkalmazáskonfigurációs erőforrást. Válassza a Konfigurációkezelőt a Műveletek területen, és hozzon létre egy új kulcs-érték párot a +Kulcs-érték létrehozásaa következő paraméterek hozzáadásához:
Kulcs Érték őr 0 Egyelőre hagyja üresen a címkét és a tartalomtípust .
Válassza az Alkalmazás lehetőséget.
Állítsa össze a Spring Boot-alkalmazást a Mavennel, és futtassa.
mvn clean package mvn spring-boot:runNyisson meg egy böngészőablakot, és nyissa meg az URL-címet:
http://localhost:8080. Ekkor megjelenik a kulcshoz társított üzenet.A curl használatával tesztelheti az alkalmazást, például:
curl -X GET http://localhost:8080/A dinamikus konfiguráció teszteléséhez nyissa meg az alkalmazáshoz társított Azure-alkalmazás konfigurációs portált. Válassza a Konfigurációkezelőt, és frissítse a megjelenített kulcs értékét, például:
Kulcs Érték /application/config.message Hello – Frissítve Frissítse a korábban létrehozott sentinel kulcsot egy új értékre. Ez a módosítás aktiválja az alkalmazást az összes konfigurációs kulcs frissítésére a frissítési időköz leteltét követően.
Kulcs Érték őr 2 Frissítse kétszer a böngészőlapot az új üzenet megjelenítéséhez. Az első alkalommal aktiválja a frissítést, a második betölti a módosításokat, mivel az első kérés az eredeti hatókör használatával tér vissza.
Feljegyzés
A kódtár csak a frissítési időköz eltelte után ellenőrzi a módosításokat. Ha a frissítési időköz nem telt el, nem ellenőrzi a módosításokat. Várjon, amíg az időköz átmegy, majd indítsa el a frissítési ellenőrzést.
Következő lépések
Ebben az oktatóanyagban engedélyezte, hogy a Spring Boot-alkalmazás dinamikusan frissítse a konfigurációs beállításokat az Alkalmazáskonfigurációból. További kérdésekért tekintse meg a referenciadokumentációt, amely tartalmazza a Spring Cloud Azure-alkalmazás Konfigurációs kódtár működésével kapcsolatos összes részletet. Ha szeretné megtudni, hogyan használhat azure-beli felügyelt identitást az alkalmazáskonfigurációhoz való hozzáférés gördülékenyebbé tételéhez, folytassa a következő oktatóanyagban.