Migrálási útmutató a Spring Cloud Azure 4.0-hoz
Ez az útmutató segít a Spring Cloud Azure 4.0-ra való migrálásban régi Azure Spring-kódtárakból.
Introduction
Olyan kódtárakat hívunk meg, amelyek csoportazonosítója és összetevő-azonosítója a com.azure.spring:spring-cloud-azure-*
modern kódtárak, valamint a mintával com.azure.spring:azure-spring-boot-*
vagy com.azure.spring:azure-spring-integration-*
com.azure.spring:azure-spring-cloud-*
az örökölt kódtárakkal rendelkező kódtárakat követi.
Ez az útmutató a modern és az örökölt kódtárak közötti hasonló konfigurációk egymás melletti összehasonlítására összpontosít.
A csomag vagy com.azure.spring:azure-spring-integration-*
a com.azure.spring:azure-spring-boot-*
csomag com.azure.spring:azure-spring-cloud-*
ismerete feltételezve van.
Ha még csak most ismerkedik a Spring Cloud Azure 4.0-s kódtárával, az útmutató helyett tekintse meg a Spring Cloud Azure fejlesztői útmutatóját .
A migrálás előnyei
Egy természetes kérdés, amelyet fel kell tenni, amikor mérlegeli, hogy új verziót vagy kódtárat fogad-e el, annak előnyei. Ahogy az Azure kiforrott, és a fejlesztők egy változatosabb csoportja is magáévá tette, arra összpontosítottunk, hogy megismerjük azokat a mintákat és gyakorlatokat, amelyek a legjobban támogatják a fejlesztői hatékonyságot, és hogy megértsük a Spring Cloud Azure-kódtárakban meglévő hiányosságokat.
A Spring Cloud Azure-kódtárakban több területen is egységes visszajelzéseket adtak ki. A legfontosabb, hogy a különböző Azure-szolgáltatások kódtárai nem engedélyezték a konfigurációk teljes készletét. Emellett a projekt elnevezésének, az összetevők azonosítóinak, a verzióknak és a konfigurációknak az inkonzisztencia miatt meredek volt a tanulási görbe.
A Spring Cloud Azure-kódtárak fejlesztési élményének javítása érdekében kialakítási irányelvek vezettek be annak biztosítására, hogy a Spring Cloud Azure-kódtárak természetes és idiomatikus módon érezzék magukat a Spring ökoszisztémával kapcsolatban. További részletek az érdeklődőknek a tervezési dokumentációban találhatók.
A Spring Cloud Azure 4.0 megosztott felületet biztosít a különböző Spring-projektekkel integrálható kódtárakban, például a Spring Boot, a Spring Integration, a Spring Cloud Stream stb. A megosztott felület a következőket tartalmazza:
- Egységes BOM az összes Spring Cloud Azure 4.0-s kódtár belefoglalásához.
- Az összetevők egységes elnevezési konvenciója.
- Egységes módszer a hitelesítő adatok, proxyk, újrapróbálkozások, felhőkörnyezet és átviteli réteg beállításainak konfigurálására.
- Az Azure Service vagy az Azure Service SDK által támogatott összes hitelesítési módszer támogatása.
Áttekintés
Ez a migrálási útmutató a következő szakaszokból áll:
- A Spring Cloud Azure 4.0 elnevezési változásai
- Összetevő módosításai: átnevezve/ hozzáadva/törölve
- Függőségi változások
- Hitelesítési változások
- Konfigurációs tulajdonságok
- API-kompatibilitástörő változások
- Kódtár változásai
Elnevezési módosítások
Soha nem volt konzisztens vagy hivatalos név az összes Spring Cloud Azure-kódtár meghívásához. Néhányat hívtak Azure Spring Boot
, és néhányat Spring on Azure
. A 4.0 óta a projekt nevével Spring Cloud Azure
az összes Azure Spring-kódtárat ábrázoltuk.
ANYAGJEGYZÉK
Korábban két BOM-et szállítottunk a kódtárakhoz, az azure-spring-boot-bom
és azure-spring-cloud-dependencies
, de ezt a két BOM-et egy BOM-ba egyesítettük a 4.0 óta, a spring-cloud-azure-dependencies
. Adjon hozzá egy bejegyzést a dependencyManagement
projekt szakaszához, hogy kihasználhassa a függőségkezelés előnyeit.
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-dependencies</artifactId>
<version>4.14.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
Megjegyzés:
Ha Spring Boot 3.x-et használ, mindenképpen állítsa be a verziót5.8.0
.spring-cloud-azure-dependencies
A verzióról további információt a spring-cloud-azure-dependencies
Spring Cloud Azure melyik verzióját érdemes használni.
Összetevő módosításai: átnevezve/ hozzáadva/törölve
A csoportazonosítók megegyeznek a modern és régi Spring Cloud Azure-kódtárak esetében. Mind.com.azure.spring
A modern Spring Cloud Azure-kódtárak összetevő-azonosítói megváltoztak. Annak megfelelően, hogy melyik Spring-projekthez tartozik, a Spring Boothoz, a Spring Integrationhez vagy a Spring Cloud Streamhez, az összetevő azonosítóinak mintája lehet spring-cloud-azure-starter-[service]
, spring-integration-azure-[service]
vagy spring-cloud-azure-stream-binder-[service]
. Az örökölt kezdők mindegyikéhez tartozik egy összetevő-azonosító a minta azure-spring-*
alapján. Ez gyors és akadálymentes módot biztosít annak megértéséhez, hogy modern vagy régi kezdőket használ-e.
A Spring Cloud Azure 4.0 fejlesztése során átneveztünk néhány összetevőt, hogy követjék az új elnevezési konvenciókat, töröltünk néhány összetevőt, hogy a funkció egy megfelelőbb összetevőbe kerüljön, és hozzáadtunk néhány új összetevőt néhány forgatókönyv jobb kiszolgálása érdekében.
Az alábbi táblázat az örökölt összetevő-azonosító és a modern összetevő-azonosító közötti leképezéseket mutatja be:
Örökölt összetevő azonosítója | Modern összetevő azonosítója | Leírás |
---|---|---|
azure-spring-boot-starter | spring-cloud-azure-starter | Ezt az összetevőt törölték, és az összes funkciót egyesíteni kell az új spring-cloud-azure-starter összetevővel. |
azure-spring-boot-starter-active-directory | spring-cloud-azure-starter-active-directory | Átnevezte az összetevőt. |
azure-spring-boot-starter-active-directory-b2c | spring-cloud-azure-starter-active-directory-b2c | Átnevezte az összetevőt. |
azure-spring-boot-starter-cosmos | spring-cloud-azure-starter-data-cosmos | Átnevezte az összetevőt hozzáadásra data , ami a Spring Data Azure Cosmos DB használatát jelzi. |
azure-spring-boot-starter-keyvault-certificates | nem alkalmazható | Ez a kiadás nem tartalmazza, de a későbbi verzióban is támogatott lesz. |
azure-spring-boot-starter-keyvault-secrets | spring-cloud-azure-starter-keyvault-secrets | Átnevezte az összetevőt. |
azure-spring-boot-starter-servicebus-jms | spring-cloud-azure-starter-servicebus-jms | Átnevezte az összetevőt. |
azure-spring-boot-starter-storage | spring-cloud-azure-starter-storage-blob spring-cloud-azure-starter-storage-file-share |
Az örökölt összetevő a Storage Blob és a Fájlmegosztás funkcióját is tartalmazza, a 4.0-s, a spring-cloud-azure-starter-storage-blob és a spring-cloud-azure-starter-storage-file-share két különálló összetevőre van osztva. |
azure-spring-boot | nem alkalmazható | Ezt az összetevőt törölték, és az összes funkciót egyesíteni kell az új spring-cloud-azure-autoconfigure összetevővel. |
azure-spring-cloud-autoconfigure | nem alkalmazható | Ezt az összetevőt törölték, és az összes funkciót egyesíteni kell az új spring-cloud-azure-autoconfigure összetevővel. |
azure-spring-cloud-context | nem alkalmazható | Ez az összetevő törölve lett, és az összes funkció egyesítve lesz az új spring-cloud-azure-autoconfigure és spring-cloud-azure-resourcemanager az összetevőkkel. |
azure-spring-cloud-messaging | spring-messaging-azure | Az üzenetfigyelő megjegyzése el lett dobva. |
azure-spring-cloud-starter-cache | nem alkalmazható | Ezt az összetevőt törölték a redis használatához, csak adja hozzá a spring-boot-starter-data-redis, a spring-boot-starter-cache, a spring-cloud-azure-resourcemanager és a spring-cloud-azure-starter elemet. További információ a használatról: Spring Cloud Azure Redis-támogatás. |
azure-spring-cloud-starter-eventhubs-kafka | nem alkalmazható | Ezt az összetevőt törölték a kafka használatához, csak adja hozzá a spring kafkát, a spring-cloud-azure-resourcemanagert és a spring-cloud-azure-startert. További információ a használatról: Spring Cloud Azure Kafka-támogatás. |
azure-spring-cloud-starter-eventhubs | spring-cloud-azure-starter-integration-eventhubs | Átnevezte az összetevőt hozzáadásra integration , ami azt jelzi, hogy a Spring Integration with Event Hubs használatával. |
azure-spring-cloud-starter-servicebus | spring-cloud-azure-starter-integration-servicebus | Átnevezte az összetevőt hozzáadásra integration , ami azt jelzi, hogy a Spring Integration with Service Bus használatával. |
azure-spring-cloud-starter-storage-queue | spring-cloud-azure-starter-integration-storage-queue | Átnevezte az összetevőt hozzáadásra integration , ami azt jelzi, hogy a Spring Integration with Storage Queue használatával történik. |
azure-spring-cloud-storage | nem alkalmazható | Ezt az összetevőt törölték az új spring-cloud-azure-autoconfigure összetevőbe egyesítve lévő összes funkcióval. |
azure-spring-cloud-stream-binder-eventhubs | spring-cloud-azure-stream-binder-eventhubs | Ez az összetevő egy új kialakítással lett újrabontásra, főként spring-cloud-azure-stream-binder-eventhubs és spring-cloud-azure-stream-binder-eventhubs-core . |
azure-spring-cloud-stream-binder-service-core | spring-cloud-azure-stream-binder-servicebus-core | Átnevezte az összetevőt. |
azure-spring-cloud-stream-binder-servicebus-queue | spring-cloud-azure-stream-binder-servicebus | Ezt az összetevőt törölték, és az összes funkciót egyesíteni kell az spring-cloud-azure-stream-binder-servicebus összetevővel. |
azure-spring-cloud-stream-binder-servicebus-topic | spring-cloud-azure-stream-binder-servicebus | Ezt az összetevőt törölték, és az összes funkciót egyesíteni kell az spring-cloud-azure-stream-binder-servicebus összetevővel. |
azure-spring-integration-core | spring-integration-azure-core | Átnevezte az összetevőt. |
azure-spring-integration-eventhubs | spring-integration-azure-eventhubs | Nevezze át az összetevőt. |
azure-spring-integration-servicebus | spring-integration-azure-servicebus | Nevezze át az összetevőt. |
azure-spring-integration-storage-queue | spring-integration-azure-storage-queue | Nevezze át az összetevőt. |
nem alkalmazható | spring-cloud-azure-actuator | Az újonnan hozzáadott Spring Cloud Azure Actuator összetevő. |
nem alkalmazható | spring-cloud-azure-actuator-autoconfigure | Az újonnan hozzáadott Spring Cloud Azure Actuator AutoConfigure összetevő, beleértve az aktuátor automatikus konfigurálását is. |
nem alkalmazható | spring-cloud-azure-autoconfigure | Újonnan hozzáadott Spring Cloud Azure AutoConfigure összetevő, beleértve az SDK-ügyfelek összes automatikus konfigurációját, a Spring Security támogatását, a Spring Data támogatását és a Spring Integration támogatását. |
nem alkalmazható | spring-cloud-azure-core | Újonnan hozzáadott Spring Cloud Azure Core-összetevő, beleértve az összes alapvető funkciót. |
nem alkalmazható | spring-cloud-azure-resourcemanager | Újonnan hozzáadott Resource Manager-összetevő. Ez az Azure Resource Managert használó Core-kódtár metaadatok olvasására és erőforrások létrehozására. |
nem alkalmazható | spring-cloud-azure-service | Újonnan hozzáadott Spring Cloud Azure Service-összetevő, beleértve az Azure-szolgáltatások absztrakcióit is. |
nem alkalmazható | spring-cloud-azure-starter-appconfiguration | Újonnan hozzáadott kezdőprogram a Azure-alkalmazás Configuration SDK-ügyfél használatához. |
nem alkalmazható | spring-cloud-azure-starter-cosmos | Újonnan hozzáadott kezdő az Azure Cosmos DB SDK-ügyfél használatához. |
nem alkalmazható | spring-cloud-azure-starter-eventhubs | Újonnan hozzáadott kezdő az Azure Event Hubs SDK-ügyfél használatához. |
nem alkalmazható | spring-cloud-azure-starter-servicebus | Újonnan hozzáadott kezdő az Azure Service Bus SDK-ügyfél használatához. |
nem alkalmazható | spring-cloud-azure-starter-storage-blob | Újonnan hozzáadott kezdő az Azure Storage Blob SDK-ügyfél használatához. |
nem alkalmazható | spring-cloud-azure-starter-storage-file-share | Újonnan hozzáadott kezdő az Azure Storage-fájlmegosztásI SDK-ügyfél használatához. |
nem alkalmazható | spring-cloud-azure-starter-storage-queue | Újonnan hozzáadott kezdő az Azure Storage Queue SDK-ügyfél használatához. |
nem alkalmazható | spring-cloud-azure-starter-stream-eventhubs | Újonnan hozzáadott kezdő az Azure Event Hubs Spring Cloud Stream Binder használatához. |
nem alkalmazható | spring-cloud-azure-starter-stream-servicebus | Újonnan hozzáadott kezdő az Azure Service Bus Spring Cloud Stream Binder használatához |
nem alkalmazható | spring-cloud-azure-stream-binder-eventhubs-core | Újonnan hozzáadott Spring Cloud Stream-alapösszetevő az Azure Event Hubshoz. |
Függőségek változásai
Néhány szükségtelen függőséget tartalmaztak az örökölt összetevők, amelyeket eltávolítottunk a modern Spring Cloud Azure 4.0-kódtárakból. Az összeomlások elkerülése érdekében mindenképpen adja hozzá manuálisan az eltávolított függőségeket a projekthez.
A függőségi módosításokkal rendelkező kódtárak a következők:
- spring-cloud-azure-starter
- spring-cloud-azure-starter-active-directory
- spring-cloud-azure-starter-active-directory-b2c
Hitelesítési változások
A Spring Cloud Azure 4.0 minden olyan hitelesítési módszert támogat, amelyet az egyes Azure Service SDK-k támogatnak. Lehetővé teszi egy globális jogkivonat hitelesítő adatainak konfigurálását, valamint a jogkivonat hitelesítő adatait az egyes szolgáltatási szinteken. A Spring Cloud Azure 4.0 konfigurálásához azonban nincs szükség hitelesítő adatokra, mert az alkalmazhatja a helyi fejlesztőkörnyezetben vagy felügyelt identitásban tárolt hitelesítő adatokat az Azure Servicesben. Csak győződjön meg arról, hogy a rendszerbiztonsági tag megfelelő engedélyt kapott a cél Azure-erőforrások eléréséhez.
Megjegyzés:
Amikor szerepköröket rendel a biztonsági tagokhoz az Azure üzenetkezelési szolgáltatásokkal való interakcióhoz, a kapcsolódó szerepkörök szükségesek az Data
üzenetkezelési műveletek végrehajtásához. Az Azure Spring Apps Stream Event Hubs/Service Bus Binder-kódtárakhoz akkor van szükség szerepkörre, Contributor
ha az erőforrások automatikus létrehozására van szükség. For more information, see Azure built-in roles.
A láncolt hitelesítő adatok alapértelmezés szerint automatikusan konfigurálják a DefaultAzureCredential
babot, és minden összetevő használja, ha nincs megadva további hitelesítési információ. További információ: A Java-hoz készült Azure Identity ügyfélkódtár DefaultAzureCredential szakasza.
Konfigurációs tulajdonságok
Tulajdonságok migrálása
Létrehoztunk egy további spring-configuration-metadata.json fájlt a tulajdonság migrálásának simításához a következővel való spring-boot-properties-migrator
használat során: . Először adja hozzá a következő tulajdonságot az alkalmazáshoz:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-properties-migrator</artifactId>
<scope>runtime</scope>
</dependency>
Vagy ha a Gradle-t használja:
runtime("org.springframework.boot:spring-boot-properties-migrator")
Ha futtatja az alkalmazást, az azonosítja azokat a tulajdonságokat, amelyeket már nem kezel a Spring Cloud Azure. Ha csere történik, az ideiglenesen újraképezi a tulajdonságot egy figyelmeztetéssel. Ha nincs csere, a hibajelentés további információkat ad. Akárhogy is, a konfigurációt frissíteni kell, és a függőséget el kell távolítani a konfiguráció frissítése után.
Mielőtt továbblép, érdemes az IDE keresési funkciójával ellenőrizni, hogy nem használja-e az integrációs tesztben migrált tulajdonságok egyikét.
Megjegyzés:
Ebben a változásban számos konfigurációs tulajdonságot módosítottunk. spring-boot-properties-migrator
A segítségével zökkenőmentessé válik a migrálás.
Globális konfigurációk
A modern spring-cloud-azure-starter
lehetővé teszi a névtérben spring.cloud.azure
lévő összes Azure SDK-ra vonatkozó tulajdonságok meghatározását. Ez a funkció nem támogatott az örökölt azure-spring-boot-starter
verzióban. A globális konfigurációk öt kategóriára oszthatók, az alábbi táblázatban látható módon:
Előtag | Leírás |
---|---|
spring.cloud.azure.client | Konfigurálja az egyes Azure SDK-k alatti átviteli ügyfeleket. |
spring.cloud.azure.credential | A Microsoft Entra-azonosítóval történő hitelesítést konfigurálja. |
spring.cloud.azure.profile | Konfigurálja az Azure-felhőkörnyezetet. |
spring.cloud.azure.proxy | Konfigurálja a proxybeállításokat, és az összes Azure SDK-ügyfélre érvényes. |
spring.cloud.azure.retry | Konfigurálja az újrapróbálkozási beállításokat, és az összes Azure SDK-ügyfélre érvényes. Az újrapróbálkozások az SDK-k egy részét támogatták, nem spring.cloud.azure.cosmos.retry . |
A konfigurációk teljes listáját a Spring Cloud Azure konfigurációs tulajdonságai között találja.
Az egyes SDK-k konfigurálása
Az SDK-szinten elérhető konfigurációs beállításokról az alábbi hivatkozásokon tájékozódhat:
- Az azure-spring-boot-starter-active-directorytól a spring-cloud-azure-starter-active-directoryig
- Az azure-spring-boot-starter-active-directory-b2c-től a spring-cloud-azure-starter-active-directory-b2c-hez
- Az azure-spring-boot-starter-cosmostól a spring-cloud-azure-starter-data-cosmosig
- Az azure-spring-boot-starter-keyvault-secrets-tól a spring-cloud-azure-starter-keyvault-secretsig
- Az azure-spring-boot-starter-servicebus-jms-től a spring-cloud-azure-starter-servicebus-jmsig
- Az azure-spring-boot-starter-storage-tól a spring-cloud-azure-starter-storage-blobig
- Az azure-spring-boot-starter-storage-tól a spring-cloud-azure-starter-storage-file-shareig
- Az azure-spring-cloud-starter-eventhubstól a spring-cloud-azure-starter-integration-eventhubsig
- Az azure-spring-cloud-starter-servicebustól a spring-cloud-azure-starter-integration-servicebusig
- Az azure-spring-cloud-starter-storage-queue-tól a spring-cloud-azure-starter-integration-storage-queueig
- Az azure-spring-cloud-stream-binder-eventhubstól a spring-cloud-azure-stream-binder-eventhubsig
- Az azure-spring-cloud-stream-binder-servicebus-*-tól a spring-cloud-azure-stream-binder-servicebusig
API-kompatibilitástörő változások
Az EGYES kódtárak API-kompatibilitástörő változásaival kapcsolatos részletekért használja az alábbi hivatkozásokat:
- Az azure-spring-boot-starter-active-directorytól a spring-cloud-azure-starter-active-directoryig
- Az azure-spring-boot-starter-active-directory-b2c-től a spring-cloud-azure-starter-active-directory-b2c-hez
- Az azure-spring-boot-starter-storage-tól a spring-cloud-azure-starter-storage-blobig
- Az azure-spring-boot-starter-storage-tól a spring-cloud-azure-starter-storage-file-shareig
- Az azure-spring-cloud-starter-eventhubstól a spring-cloud-azure-starter-integration-eventhubsig
- Az azure-spring-integration-eventhubstól a spring-integration-azure-eventhubsig
- Az azure-spring-cloud-starter-servicebustól a spring-cloud-azure-starter-integration-servicebusig
- Az azure-spring-integration-servicebustól a spring-integration-azure-servicebusig
- Az azure-spring-cloud-starter-storage-queue-tól a spring-cloud-azure-starter-integration-storage-queueig
- Az azure-spring-integration-storage-queue-tól a spring-integration-azure-storage-queueig
- Az azure-spring-cloud-stream-binder-eventhubstól a spring-cloud-azure-stream-binder-eventhubsig
- Az azure-spring-cloud-stream-binder-servicebus-*-tól a spring-cloud-azure-stream-binder-servicebusig
Kódtár változásai
Az egyes kódtárakban az alábbiak szerint vezetjük be a kompatibilitástörő változásokat.
Az azure-spring-boot-startertől a spring-cloud-azure-starterig
Ez az útmutató az azure-spring-boot-starter 3-as verziójáról a spring-cloud-azure-starterre való migrálást segíti.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
Függőségi változások
Néhány szükségtelen függőséget tartalmaztak az örökölt összetevők, amelyeket eltávolítottunk a modern Spring Cloud Azure 4.0-kódtárakból. Ügyeljen arra, hogy manuálisan adja hozzá az eltávolított függőségeket a projekthez, hogy megelőzze a véletlen összeomlást.
Az alábbi táblázat az Eltávolított függőségeket mutatja be:
Eltávolított függőségek | Leírás |
---|---|
org.springframework.boot:spring-boot-starter-validation | Adja meg az érvényesítési kezdőt, ha a Hibernate Validatort szeretné használni. |
Az azure-spring-boot-starter-active-directorytól a spring-cloud-azure-starter-active-directoryig
Ez az útmutató az azure-spring-boot-starter-active-directory 3-as verziójáról a spring-cloud-azure-starter-active-directoryra való migrálást segíti.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
Függőségi változások
Az örökölt összetevő néhány szükségtelen függősége el lett távolítva a modern Spring Cloud Azure 4.0-s kódtár óta. Vegye fel ezeket az eltávolított függőségeket a projektbe, hogy megakadályozza a véletlen összeomlást.
Az alábbi táblázat az Eltávolított függőségeket mutatja be:
Eltávolított függőségek | Leírás |
---|---|
com.fasterxml.jackson.core:jackson-databind | Szükség esetén vegye fel ezt a függőséget a projektbe. |
io.projectreactor.netty:reactor-netty | Szükség esetén vegye fel ezt a függőséget a projektbe. |
org.springframework.boot:spring-boot-starter-validation | Szükség esetén vegye fel ezt a függőséget a projektbe. |
org.springframework.boot:spring-boot-starter-webflux | Szükség esetén vegye fel ezt a függőséget a projektbe. |
SDK-konfiguráció változásai
Ez a szakasz a hozzáadott, eltávolított és módosított tulajdonságok módosításait tartalmazza.
- A következő két pont a legfontosabb, hogy figyelmet fordítsunk:
- A konfigurációtulajdonságok neveinek előtagja a helyről
azure.activedirectory
a másikraspring.cloud.azure.active-directory
módosult. - Új tulajdonságot
spring.cloud.azure.active-directory.enabled
ad hozzá a Microsoft Entra-hoz kapcsolódó funkciók engedélyezéséhez/letiltásához. Az alapértelmezett értékfalse
.
Az alábbi táblázat a tulajdonságleképezéseket mutatja be a következők között azure-spring-boot-starter-active-directory
spring-cloud-azure-starter-active-directory
:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
azure.activedirectory.app-id-uri | spring.cloud.azure.active-directory.app-id-uri |
azure.activedirectory.application-type | spring.cloud.azure.active-directory.application-type |
azure.activedirectory.authorization-clients | spring.cloud.azure.active-directory.authorization-clients |
azure.activedirectory.authorization-clients.AZURE_CLIENT_NAME.authorization-grant-type | spring.cloud.azure.active-directory.authorization-clients.AZURE_CLIENT_NAME.authorization-grant-type |
azure.activedirectory.authorization-clients.AZURE_CLIENT_NAME.on-demand | spring.cloud.azure.active-directory.authorization-clients.AZURE_CLIENT_NAME.on-demand |
azure.activedirectory.authorization-clients.AZURE_CLIENT_NAME.scopes | spring.cloud.azure.active-directory.authorization-clients.AZURE_CLIENT_NAME.scopes |
azure.activedirectory.authenticate-additional-parameters | spring.cloud.azure.active-directory.authenticate-additional-parameters |
azure.activedirectory.base-uri | spring.cloud.azure.active-directory.profile.environment.active-directory-endpoint |
azure.activedirectory.client-id | spring.cloud.azure.active-directory.credential.client-id |
azure.activedirectory.client-secret | spring.cloud.azure.active-directory.credential.client-secret |
azure.activedirectory.graph-membership-uri | További információért tekintse meg az alábbi táblázatot. |
azure.activedirectory.jwt-connect-timeout | spring.cloud.azure.active-directory.jwt-connect-timeout. |
azure.activedirectory.jwt-read-timeout | spring.cloud.azure.active-directory.jwt-read-timeout. |
azure.activedirectory.jwt-size-limit | spring.cloud.azure.active-directory.jwt-size-limit. |
azure.activedirectory.jwk-set-cache-lifespan | spring.cloud.azure.active-directory.jwk-set-cache-lifespan. |
azure.activedirectory.jwk-set-cache-refresh-time | spring.cloud.azure.active-directory.jwk-set-cache-refresh-time |
azure.activedirectory.post-logout-redirect-uri | spring.cloud.azure.active-directory.post-logout-redirect-uri |
azure.activedirectory.session-stateless | spring.cloud.azure.active-directory.session-stateless |
azure.activedirectory.redirect-uri-template | spring.cloud.azure.active-directory.redirect-uri-template |
azure.activedirectory.resource-server.claim-to-authority-prefix-map | spring.cloud.azure.active-directory.resource-server.claim-to-authority-prefix-map |
azure.activedirectory.resource-server.principal-claim-name | spring.cloud.azure.active-directory.resource-server.principal-claim-name |
azure.activedirectory.tenant-id | spring.cloud.azure.active-directory.profile.tenant-id |
azure.activedirectory.user-group.allowed-group-ids | spring.cloud.azure.active-directory.user-group.allowed-group-ids |
azure.activedirectory.user-group.allowed-group-names | spring.cloud.azure.active-directory.user-group.allowed-group-names |
azure.activedirectory.user-name-attribútum | spring.cloud.azure.active-directory.user-name-attribútum |
A következő tulajdonságok értéktípusa a következőre
long
Duration
módosul:jwt-connect-timeout
jwt-read-timeout
jwk-set-cache-lifespan
jwk-set-cache-refresh-time
.
A rendszer a következő tulajdonságokat távolítja el:
- azure.activedirectory.allow-telemetria
- azure.activedirectory.user-group.enable-full-list
- azure.activedirectory.graph-base-uri
- azure.activedirectory.graph-membership-uri
A rendszer a következő tulajdonságokat adja hozzá:
- spring.cloud.azure.active-directory.enabled
- spring.cloud.azure.active-directory.profile.environment.microsoft-graph-endpoint
- spring.cloud.azure.active-directory.user-group.use-transitive-members
Megjegyzés:
A függvény azure.activedirectory.graph-membership-uri
helyébe 2 tulajdonság lépett: spring.cloud.azure.active-directory.profile.environment.microsoft-graph-endpoint
és spring.cloud.azure.active-directory.user-group.use-transitive-members
. Az első tulajdonság a gazdagép nevének megadására szolgál, a második pedig az URL-elérési út használatára szolgáló jelölő: v1.0/me/memberOf
vagy v1.0/me/transitiveMemberOf
.
Íme néhány példa a migrálásra:
1. példa. Case 1
Örökölt: azure.activedirectory.graph-membership-uri=https://graph.microsoft.com/v1.0/me/memberOf
Modern: spring.cloud.azure.active-directory.profile.environment.microsoft-graph-endpoint=
https://graph.microsoft.com/
+ spring.cloud.azure.active-directory.user-group.use-transitive-members=false
2. példa. Case 2
Örökölt: azure.activedirectory.graph-membership-uri=https://graph.microsoft.com/v1.0/me/transitiveMemberOf
Modern: spring.cloud.azure.active-directory.profile.environment.microsoft-graph-endpoint=
https://graph.microsoft.com/
+ spring.cloud.azure.active-directory.user-group.use-transitive-members=true
API-változások
Az alábbi táblázat a következő osztályleképezéseket azure-spring-boot-starter-active-directory
spring-cloud-azure-starter-active-directory
mutatja:
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.aad.webapi.AADJwtBearerTokenAuthenticationConverter | com.azure.spring.cloud.autoconfigure.aad.AadJwtBearerTokenAuthenticationConverter |
com.azure.spring.aad.webapi.AADResourceServerProperties | com.azure.spring.cloud.autoconfigure.aad.properties.AadResourceServerProperties |
com.azure.spring.aad.webapi.AADResourceServerWebSecurityConfigurerAdapter | com.azure.spring.cloud.autoconfigure.aad.AadResourceServerWebSecurityConfigurerAdapter |
com.azure.spring.aad.webapp.AADWebSecurityConfigurerAdapter | com.azure.spring.cloud.autoconfigure.aad.AadWebSecurityConfigurerAdapter |
com.azure.spring.aad.webapp.AuthorizationClientProperties | com.azure.spring.cloud.autoconfigure.aad.properties.AuthorizationClientProperties |
com.azure.spring.aad.AADApplicationType | com.azure.spring.cloud.autoconfigure.aad.properties.AadApplicationType |
com.azure.spring.aad.AADAuthorizationGrantType | com.azure.spring.cloud.autoconfigure.aad.properties.AadAuthorizationGrantType |
com.azure.spring.aad.AADAuthorizationServerEndpoints | com.azure.spring.cloud.autoconfigure.aad.properties.AadAuthorizationServerEndpoints |
com.azure.spring.aad.AADClientRegistrationRepository | com.azure.spring.cloud.autoconfigure.aad.AadClientRegistrationRepository |
com.azure.spring.aad.AADTrustedIssuerRepository | com.azure.spring.cloud.autoconfigure.aad.AadTrustedIssuerRepository |
com.azure.spring.autoconfigure.aad.AADAppRoleStatelessAuthenticationFilter | com.azure.spring.cloud.autoconfigure.aad.filter.AadAppRoleStatelessAuthenticationFilter |
com.azure.spring.autoconfigure.aad.AADAuthenticationFilter | com.azure.spring.cloud.autoconfigure.aad.filter.AadAuthenticationFilter |
com.azure.spring.autoconfigure.aad.AADAuthenticationProperties | com.azure.spring.cloud.autoconfigure.aad.properties.AadAuthenticationProperties |
com.azure.spring.autoconfigure.aad.UserPrincipal | com.azure.spring.cloud.autoconfigure.aad.filter.UserPrincipal |
com.azure.spring.autoconfigure.aad.UserPrincipalManager | com.azure.spring.cloud.autoconfigure.aad.filter.UserPrincipalManager |
Ez a szakasz az azure-spring-boot-starter-active-directoryból eltávolított osztályokat sorolja fel.
Régi osztály eltávolítása
- com.azure.spring.aad.webapp.AADHandleConditionalAccessFilter
- com.azure.spring.aad.webapi.validator.AADJwtAudienceValidator
- com.azure.spring.aad.webapi.validator.AADJwtClaimValidator
Az azure-spring-boot-starter-active-directory-b2c-től a spring-cloud-azure-starter-active-directory-b2c-hez
Ez az útmutató az azure-spring-boot-starter-active-directory-b2c spring-cloud-azure-starter-active-directory-b2c fájlba való migrálást segíti az azure-spring-boot-starter-active-directory-b2c 3-as verziójából.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
Függőségi változások
Néhány szükségtelen függőséget tartalmaztak az örökölt összetevők, amelyeket eltávolítottunk a modern Spring Cloud Azure 4.0-kódtárakból. Ügyeljen arra, hogy manuálisan adja hozzá az eltávolított függőségeket a projekthez, hogy megelőzze a véletlen összeomlást.
Az alábbi táblázat az Eltávolított függőségeket mutatja be:
Eltávolított függőségek | Leírás |
---|---|
org.springframework.boot:spring-boot-starter-validation | Adja meg az érvényesítési kezdőt, ha a Hibernate Validatort szeretné használni. |
SDK-konfiguráció változásai
Ez a szakasz a hozzáadott, eltávolított és módosított tulajdonságok módosításait tartalmazza.
- A következő két pont a legfontosabb, hogy figyelmet fordítsunk:
- Minden konfigurációs tulajdonságnév az előtagot
azure.activedirectory.b2c
a következőrespring.cloud.azure.active-directory.b2c
módosította: . - A rendszer új tulajdonsággal
spring.cloud.azure.active-directory.b2c.enabled
bővíti az Azure AD B2C-vel kapcsolatos funkciók engedélyezését és letiltását. Az alapértelmezett érték: hamis.
Az alábbi táblázat a következő tulajdonságleképezéseket azure-spring-boot-starter-active-directory-b2c
spring-cloud-azure-starter-active-directory-b2c
mutatja:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
azure.activedirectory.b2c.authenticate-additional-parameters | spring.cloud.azure.active-directory.b2c.authenticate-additional-parameters |
azure.activedirectory.b2c.authorization-clients | spring.cloud.azure.active-directory.b2c.authorization-clients |
azure.activedirectory.b2c.authorization-clients.<>AZURE_CLIENT_NAME.authorization-grant-type | spring.cloud.azure.active-directory.b2c.authorization-clients.<>AZURE_CLIENT_NAME.authorization-grant-type |
azure.activedirectory.b2c.authorization-clients.<>AZURE_CLIENT_NAME.scopes | spring.cloud.azure.active-directory.b2c.authorization-clients.<>AZURE_CLIENT_NAME.scopes |
azure.activedirectory.b2c.app-id-uri | spring.cloud.azure.active-directory.b2c.app-id-uri |
azure.activedirectory.b2c.base-uri | spring.cloud.azure.active-directory.b2c.base-uri |
azure.activedirectory.b2c.client-id | spring.cloud.azure.active-directory.b2c.credential.client-id |
azure.activedirectory.b2c.client-secret | spring.cloud.azure.active-directory.b2c.credential.client-secret |
azure.activedirectory.b2c.jwt-connect-timeout | spring.cloud.azure.active-directory.b2c.jwt-connect-timeout |
azure.activedirectory.b2c.jwt-read-timeout | spring.cloud.azure.active-directory.b2c.jwt-read-timeout |
azure.activedirectory.b2c.jwt-size-limit | spring.cloud.azure.active-directory.b2c.jwt-size-limit |
azure.activedirectory.b2c.login-flow | spring.cloud.azure.active-directory.b2c.login-flow |
azure.activedirectory.b2c.logout-success-url | spring.cloud.azure.active-directory.b2c.logout-success-url |
azure.activedirectory.b2c.reply-url | spring.cloud.azure.active-directory.b2c.reply-url |
azure.activedirectory.b2c.tenant-id | spring.cloud.azure.active-directory.b2c.profile.tenant-id |
azure.activedirectory.b2c.user-flow | spring.cloud.azure.active-directory.b2c.user-flows |
azure.activedirectory.b2c.user-name-attribute-name | spring.cloud.azure.active-directory.b2c.user-name-attribute-name |
Eltávolított tulajdonságok az azure-spring-boot-starter-active-directory-b2c fájlból:
- azure.activedirectory.b2c.allow-telemetria
- azure.activedirectory.b2c.tenant
A következő tulajdonságok értéktípusa a következőre
long
Duration
módosul:- jwt-connect-timeout
- jwt-read-timeout
API-változások
Az alábbi táblázat a következő osztályleképezéseket azure-spring-boot-starter-active-directory-b2c
spring-cloud-azure-starter-active-directory-b2c
mutatja:
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.autoconfigure.b2c.AADB2CAuthorizationRequestResolver | com.azure.spring.cloud.autoconfigure.aadb2c.AadB2cAuthorizationRequestResolver |
com.azure.spring.autoconfigure.b2c.AADB2CJwtBearerTokenAuthenticationConverter | com.azure.spring.cloud.autoconfigure.aad.AadJwtBearerTokenAuthenticationConverter |
com.azure.spring.autoconfigure.b2c.AADB2CLogoutSuccessHandler | com.azure.spring.cloud.autoconfigure.aadb2c.AadB2cLogoutSuccessHandler |
com.azure.spring.autoconfigure.b2c.AADB2COidcLoginConfigurer | com.azure.spring.cloud.autoconfigure.aadb2c.AadB2COidcLoginConfigurer |
com.azure.spring.autoconfigure.b2c.AADB2CProperties | com.azure.spring.cloud.autoconfigure.aadb2c.properties.AadB2cProperties |
com.azure.spring.autoconfigure.b2c.AADB2CTrustedIssuerRepository | com.azure.spring.cloud.autoconfigure.aadb2c.AadB2cTrustedIssuerRepository |
com.azure.spring.autoconfigure.b2c.AuthorizationClientProperties | com.azure.spring.cloud.autoconfigure.aad.properties.AuthorizationClientProperties |
Az azure-spring-boot-starter-cosmostól a spring-cloud-azure-starter-data-cosmosig
Ez az útmutató az azure-spring-boot-starter-cosmos 3-as verziójából származó spring-cloud-azure-starter-data-cosmosra való migrálást segíti.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Minden konfigurációs tulajdonságnév az előtagot azure.cosmos
a következőre spring.cloud.azure.cosmos
módosította: .
Az alábbi táblázat a következő osztályleképezéseket azure-spring-boot-starter-cosmos
spring-cloud-azure-starter-data-cosmos
mutatja:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
azure.cosmos.connection-mode | spring.cloud.azure.cosmos.connection-mode |
azure.cosmos.consistency-level | spring.cloud.azure.cosmos.consistency-level |
azure.cosmos.database | spring.cloud.azure.cosmos.database |
azure.cosmos.key | spring.cloud.azure.cosmos.key |
azure.cosmos.populate-query-metrics | spring.cloud.azure.cosmos.populate-query-metrics |
azure.cosmos.uri | spring.cloud.azure.cosmos.endpoint |
Az azure-spring-boot-starter-keyvault-secrets-tól a spring-cloud-azure-starter-keyvault-secretsig
Ez az útmutató az azure-spring-boot-starter-keyvault-secrets 3-as verziójából származó spring-cloud-azure-starter-keyvault-secrets kódra való migrálásban nyújt segítséget.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Ez a szakasz a hozzáadott, eltávolított és módosított tulajdonságok módosításait tartalmazza.
Az alábbi táblázat a következő tulajdonságleképezéseket azure-spring-boot-starter-keyvault-secrets
spring-cloud-azure-starter-keyvault-secrets
mutatja:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
azure.keyvault.case-sensitive-keys | spring.cloud.azure.keyvault.secret.property-source[n].case-sensitive |
azure.keyvault.certificate-password | spring.cloud.azure.keyvault.secret.property-source[n].credential.client-certificate-password |
azure.keyvault.certificate-path | spring.cloud.azure.keyvault.secret.property-source[n].credential.client-certificate-path |
azure.keyvault.client-id | spring.cloud.azure.keyvault.secret.property-source[n].credential.client-id |
azure.keyvault.client-key | spring.cloud.azure.keyvault.secret.property-source[n].credential.client-secret |
azure.keyvault.enabled | spring.cloud.azure.keyvault.secret.property-source-enabled és spring.cloud.azure.keyvault.secret.property-source-enabled |
azure.keyvault.order | A továbbiakban nem támogatott. Használja inkább a tulajdonság-forrás[n] sorrendjét. |
azure.keyvault.refresh-interval | spring.cloud.azure.keyvault.secret.property-source[n].refresh-interval |
azure.keyvault.secret-keys | spring.cloud.azure.keyvault.secret.property-source[n].secret-keys |
azure.keyvault.tenant-id | spring.cloud.azure.keyvault.secret.property-source[n].profile.tenant-id |
azure.keyvault.uri | spring.cloud.azure.keyvault.secret.property-source[n].endpoint |
- Eltávolított tulajdonságok a spring-cloud-azure-starter-keyvault-secrets szolgáltatásból
azure.keyvault.allow-telemetry azure.keyvault.order
A következő pontokra kell figyelnie:
- Minden konfigurációs tulajdonságnév az előtagot
azure.keyvault
a következőrespring.cloud.azure.keyvault.secret
módosította: . spring.cloud.azure.keyvault.secret.enabled
a Key Vault titkos kulcsfunkcióinak engedélyezésére szolgál, tartalmazza a Key Vault titkos ügyfél bab(likeSecretClient
és ) konfigurálását ésSecretAsyncClient
a hozzáadástKeyVaultPropertySource
ConfigurableEnvironment
.spring.cloud.azure.keyvault.secret.property-source-enabled
az összesKeyVaultPropertySource
engedélyezésére szolgál. Csak akkor lép érvénybe, haspring.cloud.azure.keyvault.secret.enabled=true
.- Az Azure gyakori tulajdonságai (például
client
,proxy
,retry
,credential
),profile
) és Key Vault-tulajdonságok (példáulendpoint
,service-version
). Haspring.cloud.azure.keyvault.secret.property-sources[n].PROPERTY_NAME
nincs konfigurálva,spring.cloud.azure.keyvault.secret.PROPERTY_NAME
akkor a rendszer használja. spring.cloud.azure.keyvault.secret.property-sources[n].resource
egy egyedi Azure-erőforrásra vonatkozik, ezért ha nincs konfigurálva, akkor nem kap értéket más helyekről.
Az azure-spring-boot-starter-servicebus-jms-től a spring-cloud-azure-starter-servicebus-jmsig
Ez az útmutató az azure-spring-boot-starter-servicebus-jms 3-as verziójából származó spring-cloud-azure-starter-servicebus-jms-ekre való migrálást segíti.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Az olvashatóság érdekében spring.jms.servicebus.idle-timeout
a konfiguráció típusa (ezredmásodpercről long
mintára) Duration
változik.
Az azure-spring-boot-starter-storage-tól a spring-cloud-azure-starter-storage-blobig
Ez az útmutató segítséget nyújt a spring-cloud-azure-starter-storage-blobra való migrálásban az Azure-Spring-Boot-Starter-Storage 3-as verziójából.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Minden konfigurációs tulajdonságnév az előtagot azure.storage
a következőre spring.cloud.azure.storage.blob
módosította: .
Az alábbi táblázat a következő tulajdonságleképezéseket azure-spring-boot-starter-storage
spring-cloud-azure-starter-storage-blob
mutatja:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
azure.storage.account-name | spring.cloud.azure.storage.blob.account-name |
azure.storage.account-key | spring.cloud.azure.storage.blob.account-key |
azure.storage.blob-endpoint | spring.cloud.azure.storage.blob.endpoint |
API-változások
Az alábbi táblázat a következő osztályleképezéseket azure-spring-boot-starter-storage
spring-cloud-azure-starter-storage-blob
mutatja:
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.autoconfigure.storage.resource.AzureStorageProtocolResolver | com.azure.spring.core.resource.AzureStorageBlobProtocolResolver |
com.azure.spring.autoconfigure.storage.resource.BlobStorageResource | com.azure.spring.core.resource.StorageBlobResource |
com.azure.spring.autoconfigure.storage.resource.AzureStorageResourcePatternResolver | com.azure.spring.core.resource.AzureStorageBlobProtocolResolver |
Az azure-spring-boot-starter-storage-tól a spring-cloud-azure-starter-storage-file-shareig
Ez az útmutató az azure-spring-boot-starter-storage 3-as verziójából származó spring-cloud-azure-starter-storage-file-share fájlmegosztásra való migrálást segíti.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Minden konfigurációs tulajdonságnév az előtagot azure.storage
a következőre spring.cloud.azure.storage.fileshare
módosította: .
Az alábbi táblázat a következő tulajdonságleképezéseket azure-spring-boot-starter-storage
spring-cloud-azure-starter-storage-file-share
mutatja:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
azure.storage.account-name | spring.cloud.azure.storage.fileshare.account-name |
azure.storage.account-key | spring.cloud.azure.storage.fileshare.account-key |
azure.storage.file-endpoint | spring.cloud.azure.storage.fileshare.endpoint |
API-változások
Az alábbi táblázat a következő osztályleképezéseket azure-spring-boot-starter-storage
spring-cloud-azure-starter-storage-file-share
mutatja:
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.autoconfigure.storage.resource.AzureStorageProtocolResolver | com.azure.spring.core.resource.AzureStorageFileProtocolResolver |
com.azure.spring.autoconfigure.storage.resource.FileStorageResource | com.azure.spring.core.resource.StorageFileResource |
com.azure.spring.autoconfigure.storage.resource.AzureStorageResourcePatternResolver | com.azure.spring.core.resource.AzureStorageFileProtocolResolver |
Az azure-spring-cloud-starter-eventhubstól a spring-cloud-azure-starter-integration-eventhubsig
Ez az útmutató az Azure-spring-cloud-starter-eventhubs 2-es verziójából származó spring-cloud-azure-starter-integration-eventhubs-ra való migrálást segíti.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Fontos
A konfigurációs előtag át lett állítva a spring.cloud.azure.eventhub
spring.cloud.azure.eventhubs.
Az előtag gyermek bejegyzéseinek módosításait az alábbi táblázatokban találhatja meg:
Az alábbi táblázat a következőhöz való tulajdonságleképezéseket azure-spring-cloud-starter-eventhubs
spring-cloud-azure-starter-integration-eventhubs
mutatja be:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
spring.cloud.azure.resource-group | spring.cloud.azure.eventhubs.resource.resource-group |
spring.cloud.azure.eventhub.namespace | spring.cloud.azure.eventhubs.namespace |
spring.cloud.azure.eventhub.connection-string | spring.cloud.azure.eventhubs.connection-string |
spring.cloud.azure.eventhub.checkpoint-storage-account | spring.cloud.azure.eventhubs.processor.checkpoint-store.account-name |
spring.cloud.azure.eventhub.checkpoint-access-key | spring.cloud.azure.eventhubs.processor.checkpoint-store.account-key |
spring.cloud.azure.eventhub.checkpoint-container | spring.cloud.azure.eventhubs.processor.checkpoint-store.container-name |
Például módosítsa a következőt:
spring:
cloud:
azure:
eventhub:
connection-string: ${AZURE_EVENTHUBS_CONNECTION_STRING}
checkpoint-storage-account: ${AZURE_CHECKPOINT_STORAGE_ACCOUNT_NAME}
checkpoint-access-key: ${AZURE_CHECKPOINT_ACCOUNT_KEY}
checkpoint-container: ${AZURE_CHECKPOINT_CONTAINER_NAME}
erre:
spring:
cloud:
azure:
eventhubs:
connection-string: ${AZURE_EVENTHUBS_CONNECTION_STRING}
processor:
checkpoint-store:
container-name: ${AZURE_STORAGE_CONTAINER_NAME}
account-name: ${AZURE_STORAGE_ACCOUNT_NAME}
account-key: ${AZURE_STORAGE_ACCOUNT_KEY}
API-változások
- A figyelőjegyzetek módosításait a migration-azure-spring-cloud-messaging, azure-spring-cloud-messaging library migrálási <<>> útmutatójában találja.
- A
EventHubOperation
feliratkozási függvényt áthelyezték az osztálybaEventHubsMessageListenerContainer
, és a küldő függvényt áthelyezték ideEventHubsTemplate
. - Nevezze át
EventHubInboundChannelAdapter
, hogyEventHubsInboundChannelAdapter
összhangban legyen az Azure Event Hubs szolgáltatásával. - Módosítsa a konstruktort a következőre
EventHubInboundChannelAdapter(String, SubscribeByGroupOperation, String)
EventHubsInboundChannelAdapter(EventHubsMessageListenerContainer)
: ésEventHubsInboundChannelAdapter(EventHubsMessageListenerContainer, ListenerMode)
. - A példánystílust a buildstílus helyett az egyszerű konstruktorra módosíthatja
CheckpointConfig
. - Drop API
EventHubOperation#setCheckpointConfig
. A bejövő csatornaadapter ellenőrzőpont-konfigurációjának beállításához a felhasználók meghívhatják a metódustEventHubsContainerProperties#setCheckpointConfig
. - Drop API
EventHubOperation#setBatchConsumerConfig
. A bejövő csatornaadapter kötegfogyasztó konfigurációjának beállításához a felhasználók meghívhatják a két metódustEventHubsContainerProperties#getBatch#setMaxSize
, ésEventHubsContainerProperties#getBatch#setMaxWaitTime
közben. - A kötegfogyasztó mód esetében módosítsa a kötegelt üzenetekből konvertált üzenetfejlécek nevét.
- Üzenetfejléc módosítása a másikra
azure_eventhub_enqueued_time
azure_eventhubs_batch_converted_enqueued_time
- Üzenetfejléc módosítása a másikra
azure_eventhub_offset
azure_eventhubs_batch_converted_offset
- Üzenetfejléc módosítása a másikra
azure_eventhub_sequence_number
azure_eventhubs_batch_converted_sequence_number
- Üzenetfejléc módosítása a másikra
azure_partition_key
azure_batch_converted_partition_key
- Üzenetfejléc módosítása a másikra
- Amikor üzeneteket tesz közzé az Event Hubsban, hagyja figyelmen kívül a kötegelt üzenetekből konvertált összes üzenetfejlécet. A fejlécek a következők:
- azure_batch_converted_partition_key
- azure_eventhubs_batch_converted_enqueued_time
- azure_eventhubs_batch_converted_offset
- azure_eventhubs_batch_converted_sequence_number
- azure_eventhubs_batch_converted_system_properties
- azure_eventhubs_batch_converted_application_properties
- Az
BATCH
ellenőrzőpont mód jelenleg csak kötegfogyasztó módban működik, amely az EventHubsInboundChannelAdapter konstruktornak való átadássalListenerMode.BATCH
engedélyezhető.
Az alábbi táblázat a következő osztályleképezéseket azure-spring-cloud-starter-eventhubs
spring-cloud-azure-starter-integration-eventhubs
mutatja:
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.integration.core.AzureHeaders | com.azure.spring.messaging.AzureHeaders |
com.azure.spring.integration.core.EventHubHeaders | com.azure.spring.messaging.eventhubs.support.EventHubsHeaders |
com.azure.spring.integration.core.api.CheckpointConfig | com.azure.spring.messaging.eventhubs.core.checkpoint.CheckpointConfig |
com.azure.spring.integration.core.api.CheckpointMode | com.azure.spring.messaging.eventhubs.core.checkpoint.CheckpointMode |
com.azure.spring.integration.core.api.reactor.Checkpointer | com.azure.spring.messaging.checkpoint.Checkpointer |
com.azure.spring.integration.core.api.reactor.DefaultMessageHandler | com.azure.spring.integration.core.handler.DefaultMessageHandler |
com.azure.spring.integration.eventhub.inbound.EventHubInboundChannelAdapter | com.azure.spring.integration.eventhubs.inbound.EventHubsInboundChannelAdapter |
Mintakódrészlet
EventHubsInboundChannelAdapter
mintakód:Régi kód:
public class Demo { @Bean public EventHubInboundChannelAdapter messageChannelAdapter( @Qualifier("INPUT_CHANNEL") MessageChannel inputChannel, EventHubOperation eventhubOperation) { eventhubOperation.setCheckpointConfig(CheckpointConfig.builder().checkpointMode (CheckpointMode.MANUAL).build()); EventHubInboundChannelAdapter adapter = new EventHubInboundChannelAdapter("EVENTHUB_NAME", eventhubOperation, "CONSUMER_GROUP"); adapter.setOutputChannel(inputChannel); return adapter; } }
Modern kód:
public class Demo { @Bean public EventHubsMessageListenerContainer messageListenerContainer(EventHubsProcessorFactory processorFactory) { EventHubsContainerProperties containerProperties = new EventHubsContainerProperties(); containerProperties.setEventHubName("EVENTHUB_NAME"); containerProperties.setConsumerGroup("CONSUMER_GROUP"); CheckpointConfig config = new CheckpointConfig(CheckpointMode.MANUAL); containerProperties.setCheckpointConfig(config); return new EventHubsMessageListenerContainer(processorFactory, containerProperties); } @Bean public EventHubsInboundChannelAdapter messageChannelAdapter(@Qualifier("INPUT_CHANNEL") MessageChannel inputChannel, EventHubsMessageListenerContainer listenerContainer) { EventHubsInboundChannelAdapter adapter = new EventHubsInboundChannelAdapter(listenerContainer); adapter.setOutputChannel(inputChannel); return adapter; } }
DefaultMessageHandler
mintakód:Régi kód:
public class Demo { @Bean @ServiceActivator(inputChannel = "OUTPUT_CHANNEL") public MessageHandler messageSender(EventHubOperation eventhubOperation) { DefaultMessageHandler handler = new DefaultMessageHandler("EVENTHUB_NAME", eventhubOperation); handler.setSendCallback(new ListenableFutureCallback<Void>() { @Override public void onSuccess(Void result) { LOGGER.info("Message was sent successfully."); } @Override public void onFailure(Throwable ex) { LOGGER.error("There was an error sending the message.", ex); } }); return handler; } }
Modern kód:
public class Demo { @Bean @ServiceActivator(inputChannel = "OUTPUT_CHANNEL") public MessageHandler messageSender(EventHubsTemplate eventhubOperation) { DefaultMessageHandler handler = new DefaultMessageHandler("EVENTHUB_NAME", eventhubOperation); handler.setSendCallback(new ListenableFutureCallback<Void>() { @Override public void onSuccess(Void result) { LOGGER.info("Message was sent successfully."); } @Override public void onFailure(Throwable ex) { LOGGER.error("There was an error sending the message.", ex); } }); return handler; } }
Az azure-spring-integration-eventhubstól a spring-integration-azure-eventhubsig
Ez az útmutató az azure-spring-integration-eventhubs 2-es verziójából származó spring-integration-azure-eventhubsra való migrálást segíti.
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
API-változások
- A
EventHubOperation
feliratkozási függvényt áthelyezték az osztálybaEventHubsMessageListenerContainer
, és a küldő függvényt áthelyezték ideEventHubsTemplate
. - Nevezze át
EventHubInboundChannelAdapter
, hogyEventHubsInboundChannelAdapter
összhangban legyen az Azure Event Hubs szolgáltatásával. - Módosítsa a konstruktort a következőre
EventHubInboundChannelAdapter(String, SubscribeByGroupOperation, String)
EventHubsInboundChannelAdapter(EventHubsMessageListenerContainer)
: ésEventHubsInboundChannelAdapter(EventHubsMessageListenerContainer, ListenerMode)
. - A példánystílust a buildstílus helyett az egyszerű konstruktorra módosíthatja
CheckpointConfig
. - Drop API
EventHubOperation#setCheckpointConfig
. A bejövő csatornaadapter ellenőrzőpont-konfigurációjának beállításához a felhasználók meghívhatják a metódustEventHubsContainerProperties#setCheckpointConfig
. - Drop API
EventHubOperation#setBatchConsumerConfig
. A bejövő csatornaadapter kötegfogyasztó konfigurációjának beállításához a felhasználók meghívhatják a két metódustEventHubsContainerProperties#getBatch#setMaxSize
, ésEventHubsContainerProperties#getBatch#setMaxWaitTime
közben. - A kötegfogyasztó mód esetében módosítsa a kötegelt üzenetekből konvertált üzenetfejlécek nevét.
- Üzenetfejléc módosítása a másikra
azure_eventhub_enqueued_time
azure_eventhubs_batch_converted_enqueued_time
- Üzenetfejléc módosítása a másikra
azure_eventhub_offset
azure_eventhubs_batch_converted_offset
- Üzenetfejléc módosítása a másikra
azure_eventhub_sequence_number
azure_eventhubs_batch_converted_sequence_number
- Üzenetfejléc módosítása a másikra
azure_partition_key
azure_batch_converted_partition_key
- Üzenetfejléc módosítása a másikra
- Amikor üzeneteket tesz közzé az Event Hubsban, hagyja figyelmen kívül a kötegelt üzenetekből konvertált összes üzenetfejlécet. A fejlécek a következők:
- azure_batch_converted_partition_key
- azure_eventhubs_batch_converted_enqueued_time
- azure_eventhubs_batch_converted_offset
- azure_eventhubs_batch_converted_sequence_number
- azure_eventhubs_batch_converted_system_properties
- azure_eventhubs_batch_converted_application_properties
- Az
BATCH
ellenőrzőpont mód jelenleg csak kötegfogyasztó módban működik, amely az EventHubsInboundChannelAdapter konstruktornak való átadássalListenerMode.BATCH
engedélyezhető.
Az alábbi táblázat a következő osztályleképezéseket azure-spring-integration-eventhubs
spring-integration-azure-eventhubs
mutatja:
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.integration.core.AzureHeaders | com.azure.spring.messaging.AzureHeaders |
com.azure.spring.integration.core.EventHubHeaders | com.azure.spring.messaging.eventhubs.support.EventHubsHeaders |
com.azure.spring.integration.core.api.CheckpointConfig | com.azure.spring.messaging.eventhubs.core.checkpoint.CheckpointConfig |
com.azure.spring.integration.core.api.CheckpointMode | com.azure.spring.messaging.eventhubs.core.checkpoint.CheckpointMode |
com.azure.spring.integration.core.api.reactor.Checkpointer | com.azure.spring.messaging.checkpoint.Checkpointer |
com.azure.spring.integration.core.api.reactor.DefaultMessageHandler | com.azure.spring.integration.core.handler.DefaultMessageHandler |
com.azure.spring.integration.eventhub.inbound.EventHubInboundChannelAdapter | com.azure.spring.integration.eventhubs.inbound.EventHubsInboundChannelAdapter |
Az azure-spring-cloud-starter-servicebustól a spring-cloud-azure-starter-integration-servicebusig
Ez az útmutató az Azure-spring-cloud-starter-servicebus 2-es verziójáról a spring-cloud-azure-starter-integration-servicebusra való migrálást segíti.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Az összes támogatott spring-cloud-azure-starter-integration-servicebus
konfigurációs beállítás esetében az előtag a következő marad spring.cloud.azure.servicebus
: .
Az alábbi táblázat a következő tulajdonságleképezéseket azure-spring-cloud-starter-servicebus
spring-cloud-azure-starter-integration-servicebus
mutatja:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
spring.cloud.azure.resource-group | spring.cloud.azure.servicebus.resource.resource-group |
spring.cloud.azure.servicebus.transport-type | spring.cloud.azure.servicebus.client.transport-type |
spring.cloud.azure.servicebus.retry-options.retry-mode | spring.cloud.azure.servicebus.retry.mode |
spring.cloud.azure.servicebus.retry-options.max-retries | a spring.cloud.azure.servicebus.retry.exponential.max-retries vagy a spring.cloud.azure.servicebus.retry.fixed.max-retries függvényt a spring.cloud.azure.servicebus.retry.mode=fix vagy exponenciális függvénytől függően kell konfigurálni. |
spring.cloud.azure.servicebus.retry-options.delay | A spring.cloud.azure.servicebus.retry.exponenciális.base-delay vagy spring.cloud.azure.servicebus.retry.fixed.delay függvényt a spring.cloud.azure.servicebus.retry.mode=fix vagy exponenciális értéktől függően kell konfigurálni. |
spring.cloud.azure.servicebus.retry-options.max-delay | spring.cloud.azure.servicebus.retry.exponenciális.max-delay |
spring.cloud.azure.servicebus.retry-options.try-timeout | spring.cloud.azure.servicebus.retry.try-timeout |
API-változások
ServiceBusTopicOperation
AServiceBusQueueOperation
feliratkozási függvényt áthelyezte az osztálybaServiceBusMessageListenerContainer
, a küldő függvény pedig a következőreServiceBusTemplate
: .- A szolgáltatás elvetése
ServiceBusQueueInboundChannelAdapter
ésServiceBusTopicInboundChannelAdapter
áthelyezése Service Bus-üzenetsor/témakör entitás figyeléséhez a ServiceBusInboundChannelAdapterbe. - Módosítsa a konstruktort a következőre
ServiceBusQueueInboundChannelAdapter(String, SubscribeByGroupOperation, String)
ServiceBusInboundChannelAdapter(ServiceBusMessageListenerContainer)
: ésServiceBusInboundChannelAdapter(ServiceBusMessageListenerContainer, ListenerMode)
. - Módosítsa a konstruktort a következőre
ServiceBusTopicInboundChannelAdapter(String, SubscribeByGroupOperation, String)
ServiceBusInboundChannelAdapter(ServiceBusMessageListenerContainer)
: ésServiceBusInboundChannelAdapter(ServiceBusMessageListenerContainer, ListenerMode)
. - API-k
ServiceBusQueueOperation#setCheckpointConfig
ésServiceBusTopicOperation#setCheckpointConfig
. A bejövő csatornaadapter ellenőrzőpont-konfigurációjának beállításához a felhasználók meghívhatják a metódustServiceBusContainerProperties#setAutoComplete
. Az automatikus kiegészítési mód letiltása egyenértékűMANUAL
az ellenőrzőpont móddal, és az engedélyezéséhez aktiválni fogja aRECORD
módot. - API-k
ServiceBusQueueOperatio#setClientConfig
ésServiceBusTopicOperation#setClientConfig
. A bejövő csatornaadapter által használt mögöttesServiceBusProcessorClient
adapter konfigurálásához a felhasználók használhatjákServiceBusContainerProperties
helyette. - A támogatás és a
DefaultMessageHandler
ServiceBusTemplate
támogatásReactor
elvetéseCompletableFuture
. - Adjon hozzá új API-t az entitás típusának
ServiceBusTemplate#setDefaultEntityType
megadásához, amely akkor szükséges, ha nincs megadva babPropertiesSupplier<String, ProducerProperties>
aProducerProperties#entityType
. - Üzenetfejléc elvetése
AzureHeaders.RAW_ID
. UseServiceBusMessageHeaders.MESSAGE_ID
instead.
Az alábbi táblázat a következő osztályleképezéseket azure-spring-cloud-starter-servicebus
spring-cloud-azure-starter-integration-servicebus
mutatja:
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.integration.core.AzureHeaders | com.azure.spring.messaging.AzureHeaders |
com.azure.spring.integration.servicebus.converter.ServiceBusMessageHeaders | com.azure.spring.messaging.servicebus.support.ServiceBusMessageHeaders |
com.azure.spring.integration.servicebus.converter.ServiceBusMessageConverter | com.azure.spring.messaging.servicebus.support.converter.ServiceBusMessageConverter |
com.azure.spring.integration.core.DefaultMessageHandler | com.azure.spring.integration.core.handler.DefaultMessageHandler |
com.azure.spring.integration.servicebus.inbound.ServiceBusQueueInboundChannelAdapter | com.azure.spring.integration.servicebus.inbound.ServiceBusInboundChannelAdapter |
com.azure.spring.integration.servicebus.inbound.ServiceBusTopicInboundChannelAdapter | com.azure.spring.integration.servicebus.inbound.ServiceBusInboundChannelAdapter |
Mintakódrészlet
ServiceBusInboundChannelAdapter
mintakód:Régi kód, amely a következőt használja
ServiceBusQueueInboundChannelAdapter
ServiceBusTopicInboundChannelAdapter
:public class Demo { @Bean public ServiceBusQueueInboundChannelAdapter queueMessageChannelAdapter( @Qualifier("INPUT_CHANNEL_NAME") MessageChannel inputChannel, ServiceBusQueueOperation queueOperation) { queueOperation.setCheckpointConfig(CheckpointConfig.builder().checkpointMode(CheckpointMode.MANUAL).build()); ServiceBusQueueInboundChannelAdapter adapter = new ServiceBusQueueInboundChannelAdapter("QUEUE_NAME", queueOperation); adapter.setOutputChannel(inputChannel); return adapter; } @Bean public ServiceBusTopicInboundChannelAdapter topicMessageChannelAdapter( @Qualifier("INPUT_CHANNEL_NAME") MessageChannel inputChannel, ServiceBusTopicOperation topicOperation) { topicOperation.setCheckpointConfig(CheckpointConfig.builder().checkpointMode(CheckpointMode.MANUAL).build()); ServiceBusTopicInboundChannelAdapter adapter = new ServiceBusTopicInboundChannelAdapter("TOPIC_NAME", topicOperation, "SUBSCRIPTION_NAME"); adapter.setOutputChannel(inputChannel); return adapter; } }
Modern kód:
public class Demo { @Bean("queue-listener-container") public ServiceBusMessageListenerContainer messageListenerContainer(ServiceBusProcessorFactory processorFactory) { ServiceBusContainerProperties containerProperties = new ServiceBusContainerProperties(); containerProperties.setEntityName("QUEUE_NAME"); containerProperties.setAutoComplete(false); return new ServiceBusMessageListenerContainer(processorFactory, containerProperties); } @Bean public ServiceBusInboundChannelAdapter queueMessageChannelAdapter( @Qualifier("INPUT_CHANNEL") MessageChannel inputChannel, @Qualifier("queue-listener-container") ServiceBusMessageListenerContainer listenerContainer) { ServiceBusInboundChannelAdapter adapter = new ServiceBusInboundChannelAdapter(listenerContainer); adapter.setOutputChannel(inputChannel); return adapter; } @Bean("topic-listener-container") public ServiceBusMessageListenerContainer messageListenerContainer(ServiceBusProcessorFactory processorFactory) { ServiceBusContainerProperties containerProperties = new ServiceBusContainerProperties(); containerProperties.setEntityName("TOPIC_NAME"); containerProperties.setSubscriptionName("SUBSCRIPTION_NAME"); containerProperties.setAutoComplete(false); return new ServiceBusMessageListenerContainer(processorFactory, containerProperties); } @Bean public ServiceBusInboundChannelAdapter topicMessageChannelAdapter( @Qualifier("INPUT_CHANNEL") MessageChannel inputChannel, @Qualifier("topic-listener-container") ServiceBusMessageListenerContainer listenerContainer) { ServiceBusInboundChannelAdapter adapter = new ServiceBusInboundChannelAdapter(listenerContainer); adapter.setOutputChannel(inputChannel); return adapter; } }
DefaultMessageHandler
mintakód:Örökölt kód, példaként az üzenetsorra:
public class Demo { @Bean @ServiceActivator(inputChannel = "OUTPUT_CHANNEL_NAME") public MessageHandler queueMessageSender(ServiceBusQueueOperation queueOperation) { DefaultMessageHandler handler = new DefaultMessageHandler("QUEUE_NAME", queueOperation); handler.setSendCallback(new ListenableFutureCallback<Void>() { @Override public void onSuccess(Void result) { LOGGER.info("Message was sent successfully."); } @Override public void onFailure(Throwable ex) { LOGGER.info("There was an error sending the message."); } }); return handler; } }
Modern kód:
public class Demo { @Bean @ServiceActivator(inputChannel = "OUTPUT_CHANNEL_NAME") public MessageHandler queueMessageSender(ServiceBusTemplate serviceBusTemplate) { serviceBusTemplate.setDefaultEntityType(ServiceBusEntityType.QUEUE); DefaultMessageHandler handler = new DefaultMessageHandler("QUEUE_NAME", serviceBusTemplate); handler.setSendCallback(new ListenableFutureCallback<Void>() { @Override public void onSuccess(Void result) { LOGGER.info("Message was sent successfully for {}.", "QUEUE_NAME"); } @Override public void onFailure(Throwable ex) { LOGGER.info("There was an error sending the message."); } }); return handler; } }
Az azure-spring-integration-servicebustól a spring-integration-azure-servicebusig
Ez az útmutató az azure-spring-integration-servicebus 2-es verziójáról a spring-integration-azure-servicebusra való migrálást segíti.
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
API-változások
ServiceBusTopicOperation
AServiceBusQueueOperation
feliratkozási függvényt áthelyezte az osztálybaServiceBusMessageListenerContainer
, a küldő függvény pedig a következőreServiceBusTemplate
: .- A szolgáltatás elvetése
ServiceBusQueueInboundChannelAdapter
ésServiceBusTopicInboundChannelAdapter
áthelyezése Service Bus-üzenetsor/témakör entitás figyeléséhez a ServiceBusInboundChannelAdapterbe. - Módosítsa a konstruktort a következőre
ServiceBusQueueInboundChannelAdapter(String, SubscribeByGroupOperation, String)
ServiceBusInboundChannelAdapter(ServiceBusMessageListenerContainer)
: ésServiceBusInboundChannelAdapter(ServiceBusMessageListenerContainer, ListenerMode)
. - Módosítsa a konstruktort a következőre
ServiceBusTopicInboundChannelAdapter(String, SubscribeByGroupOperation, String)
ServiceBusInboundChannelAdapter(ServiceBusMessageListenerContainer)
: ésServiceBusInboundChannelAdapter(ServiceBusMessageListenerContainer, ListenerMode)
. - API-k
ServiceBusQueueOperation#setCheckpointConfig
ésServiceBusTopicOperation#setCheckpointConfig
. A bejövő csatornaadapter ellenőrzőpont-konfigurációjának beállításához a felhasználók meghívhatják a metódustServiceBusContainerProperties#setAutoComplete
. Az automatikus kiegészítési mód letiltása egyenértékűMANUAL
az ellenőrzőpont móddal, és az engedélyezéséhez aktiválni fogja aRECORD
módot. - API-k
ServiceBusQueueOperation#setClientConfig
ésServiceBusTopicOperation#setClientConfig
. A bejövő csatornaadapter által használt mögöttesServiceBusProcessorClient
adapter konfigurálásához a felhasználók használhatjákServiceBusContainerProperties
helyette. - A támogatás és a
DefaultMessageHandler
ServiceBusTemplate
támogatásReactor
elvetéseCompletableFuture
. - Adjon hozzá új API-t az entitás típusának
ServiceBusTemplate#setDefaultEntityType
megadásához, amely akkor szükséges, ha nincs megadva babPropertiesSupplier<String, ProducerProperties>
aProducerProperties#entityType
. - Üzenetfejléc elvetése
AzureHeaders.RAW_ID
. UseServiceBusMessageHeaders.MESSAGE_ID
instead.
Az alábbi táblázat a következő osztályleképezéseket azure-spring-integration-servicebus
spring-integration-azure-servicebus
mutatja:
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.integration.core.AzureHeaders | com.azure.spring.messaging.AzureHeaders |
com.azure.spring.integration.servicebus.converter.ServiceBusMessageHeaders | com.azure.spring.messaging.servicebus.support.ServiceBusMessageHeaders |
com.azure.spring.integration.servicebus.converter.ServiceBusMessageConverter | com.azure.spring.messaging.servicebus.support.converter.ServiceBusMessageConverter |
com.azure.spring.integration.core.DefaultMessageHandler | com.azure.spring.integration.core.handler.DefaultMessageHandler |
com.azure.spring.integration.servicebus.inbound.ServiceBusQueueInboundChannelAdapter | com.azure.spring.integration.servicebus.inbound.ServiceBusInboundChannelAdapter |
com.azure.spring.integration.servicebus.inbound.ServiceBusTopicInboundChannelAdapter | com.azure.spring.integration.servicebus.inbound.ServiceBusInboundChannelAdapter |
Az azure-spring-cloud-starter-storage-queue-tól a spring-cloud-azure-starter-integration-storage-queueig
Ez az útmutató segítséget nyújt a spring-cloud-azure-starter-integration-storage-queue 2. verziójából a spring-cloud-starter-storage-queuera való migrálásban.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Minden konfigurációs tulajdonságnév az előtagot spring.cloud.azure.storage
a következőre spring.cloud.azure.storage.queue
módosította: .
Az alábbi táblázat a következő tulajdonságleképezéseket azure-spring-cloud-starter-storage-queue
spring-cloud-azure-starter-integration-storage-queue
mutatja:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
spring.cloud.azure.storage.account | spring.cloud.azure.storage.queue.account-name |
spring.cloud.azure.storage.access-key | spring.cloud.azure.storage.queue.account-key |
spring.cloud.azure.storage.resource-group | spring.cloud.azure.storage.queue.resource.resource-group |
API-változások
- Adja meg helyette a
StorageQueueTemplate
műveletetStorageQueueOperation
. - A konfiguráció
StorageQueueTemplate
elvetésecheckpoint-mode
csak aMANUAL
módot támogatja.
Az alábbi táblázat az osztályleképezéseket mutatja be.azure-spring-cloud-starter-storage-queue
spring-cloud-azure-starter-integration-storage-queue
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.integration.core.AzureHeaders | com.azure.spring.messaging.AzureHeaders |
com.azure.spring.integration.storage.queue.converter.StorageQueueMessageConverter | com.azure.spring.messaging.storage.queue.support.converter.StorageQueueMessageConverter |
com.azure.spring.integration.core.api.reactor.Checkpointer | com.azure.spring.messaging.checkpoint.Checkpointer |
com.azure.spring.integration.storage.queue.StorageQueueTemplate | com.azure.spring.storage.queue.core.StorageQueueTemplate |
com.azure.spring.integration.core.api.reactor.DefaultMessageHandler | com.azure.spring.integration.core.handler.DefaultMessageHandler |
com.azure.spring.integration.storage.queue.inbound.StorageQueueMessageSource | com.azure.spring.integration.storage.queue.inbound.StorageQueueMessageSource |
Az azure-spring-integration-storage-queue-tól a spring-integration-azure-storage-queueig
Ez az útmutató az azure-spring-integration-storage-queue 2-es verziójáról a spring-integration-azure-storage-queuera való migrálást segíti.
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
API-változások
- Adja meg helyette a
StorageQueueTemplate
műveletetStorageQueueOperation
. - A konfiguráció
StorageQueueTemplate
elvetésecheckpoint-mode
csak aMANUAL
módot támogatja.
Az alábbi táblázat az osztályleképezéseket mutatja be.azure-spring-integration-storage-queue
spring-integration-azure-storage-queue
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.integration.core.AzureHeaders | com.azure.spring.messaging.AzureHeaders |
com.azure.spring.integration.storage.queue.converter.StorageQueueMessageConverter | com.azure.spring.messaging.storage.queue.support.converter.StorageQueueMessageConverter |
com.azure.spring.integration.core.api.reactor.Checkpointer | com.azure.spring.messaging.checkpoint.Checkpointer |
com.azure.spring.integration.storage.queue.StorageQueueTemplate | com.azure.spring.storage.queue.core.StorageQueueTemplate |
com.azure.spring.integration.core.api.reactor.DefaultMessageHandler | com.azure.spring.integration.core.handler.DefaultMessageHandler |
com.azure.spring.integration.storage.queue.inbound.StorageQueueMessageSource | com.azure.spring.integration.storage.queue.inbound.StorageQueueMessageSource |
Az azure-spring-cloud-stream-binder-eventhubstól a spring-cloud-azure-stream-binder-eventhubsig
Ez az útmutató segítséget nyújt a spring-cloud-azure-stream-binder-eventhubsra való migrálásban az azure-spring-cloud-stream-binder-eventhubs 2. verziójából.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Fontos
A konfigurációs előtag át lett állítva a spring.cloud.azure.eventhub
spring.cloud.azure.eventhubs.
Fontos
A kötés típusa a következőről lesz átnevezve: eventhub
.eventhubs
Az alábbi előtag gyermek bejegyzéseinek módosításait az alábbi táblázatban találhatja meg.
Az alábbi táblázat a következőhöz való tulajdonságleképezéseket azure-spring-cloud-stream-binder-eventhubs
spring-cloud-azure-stream-binder-eventhubs
mutatja be:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
spring.cloud.azure.resource-group | spring.cloud.azure.eventhubs.resource.resource-group |
spring.cloud.azure.eventhub.namespace | spring.cloud.azure.eventhubs.namespace |
spring.cloud.azure.eventhub.connection-string | spring.cloud.azure.eventhubs.connection-string |
spring.cloud.azure.eventhub.checkpoint-storage-account | spring.cloud.azure.eventhubs.processor.checkpoint-store.account-name |
spring.cloud.azure.eventhub.checkpoint-access-key | spring.cloud.azure.eventhubs.processor.checkpoint-store.account-key |
spring.cloud.azure.eventhub.checkpoint-container | spring.cloud.azure.eventhubs.processor.checkpoint-store.container-name |
spring.cloud.stream.eventhub.bindings.binding-name.consumer.max-batch-size | spring.cloud.stream.eventhubs.bindings.binding-name.consumer.batch.max-size |
spring.cloud.stream.eventhub.bindings.binding-name.consumer.max-wait-time | spring.cloud.stream.eventhubs.bindings.binding-name.consumer.batch.max-wait-time |
spring.cloud.stream.eventhub.bindings.binding-name.consumer.checkpoint-mode | spring.cloud.stream.eventhubs.bindings.binding-name.consumer.checkpoint.mode |
spring.cloud.stream.eventhub.bindings.binding-name.consumer.checkpoint-count | spring.cloud.stream.eventhubs.bindings.binding-name.consumer.checkpoint.count |
spring.cloud.stream.eventhub.bindings.binding-name.consumer.checkpoint-interval | spring.cloud.stream.eventhubs.bindings.binding-name.consumer.checkpoint.interval |
spring.cloud.stream.eventhub.bindings.binding-name.consumer.start-position | spring.cloud.stream.eventhubs.bindings.binding-name.consumer.initial-partition-event-position |
Megjegyzés:
A konfiguráció értéktípusa start-position
az egyes partíciók számáról com.azure.spring.integration.core.api.StartPosition
egy-egyre map
StartPositionProperties
módosul. A kulcs tehát a partícióazonosító, amelynek értéke com.azure.spring.cloud.service.eventhubs.properties.StartPositionProperties
magában foglalja az eltolás tulajdonságait, a sorszámot, a lekérdezett dátumidőt és a befogadót.
Konfigurációs migrálási példák
A kapcsolati sztring hitelesítéshez és a fent említett tulajdonságok migrálásához a konfigurációs módosítások a következők:
Örökölt konfiguráció:
spring:
cloud:
azure:
eventhub:
connection-string: ${AZURE_EVENTHUBS_CONNECTION_STRING}
checkpoint-storage-account: ${AZURE_CHECKPOINT_STORAGE_ACCOUNT_NAME}
checkpoint-access-key: ${AZURE_CHECKPOINT_ACCOUNT_KEY}
checkpoint-container: ${AZURE_CHECKPOINT_CONTAINER_NAME}
stream:
eventhub:
bindings:
<binding-name>:
consumer:
max-batch-size: ${AZURE_MAX_BATCH_SIZE}
max-wait-time: ${AZURE_MAX_WAIT_TIME}
checkpoint-mode: ${AZURE_CHECKPOINT_MODE}
checkpoint-count: ${AZURE_CHECKPOINT_COUNT}
checkpoint-interval: ${AZURE_CHECKPOINT_INTERVAL}
start-position: EARLIEST
Modern konfiguráció:
spring:
cloud:
azure:
eventhubs:
connection-string: ${AZURE_EVENTHUBS_CONNECTION_STRING}
processor:
checkpoint-store:
container-name: ${AZURE_STORAGE_CONTAINER_NAME}
account-name: ${AZURE_STORAGE_ACCOUNT_NAME}
account-key: ${AZURE_STORAGE_ACCOUNT_KEY}
stream:
eventhubs:
bindings:
<binding-name>:
consumer:
batch:
max-size: ${AZURE_MAX_BATCH_SIZE}
max-wait-time: ${AZURE_MAX_WAIT_TIME}
checkpoint:
mode: ${AZURE_CHECKPOINT_MODE}
count: ${AZURE_CHECKPOINT_COUNT}
interval: ${AZURE_CHECKPOINT_INTERVAL}
initial-partition-event-position:
0:
offset: earliest
1:
sequence-number: 100
2:
enqueued-date-time: 2022-01-12T13:32:47.650005Z
4:
inclusive: false
Ha a kapcsolati sztring helyett biztonsági tagokat használ, a 4.0-s verzió előtti verziókban az alkalmazás először az Azure Resource Managerhez (ARM) csatlakozik a megadott biztonsági taggal, majd lekéri a megadott névtér kapcsolati sztring ARM-lel. Végül az alkalmazás a lekért kapcsolati sztring használatával csatlakozik az Azure Event Hubshoz. Ily módon a megadott biztonsági tagot a közreműködői szerepkörrel kell megadni a társított Azure Event Hubs-névtér lekéréséhez.
Az Azure Spring Apps 4.0-hoz kétféleképpen használhatja ki a biztonsági tagokat a hitelesítéshez. Az egyik továbbra is a tagok használatával csatlakozik az ARM-hez, és lekéri azokat a kapcsolati sztring, ahol a Contributor
szerepkör szükséges a tagok számára. A másik a biztonsági tagok segítségével hitelesíti a Microsoft Entra-azonosítót, majd közvetlenül csatlakozik az Azure Event Hubshoz. Ebben az esetben a Contributor
szerepkörre már nincs szükség, míg az üzenetkezelési műveletekhez más Data
kapcsolódó szerepkörökre van szükség. Ha meg szeretné győződni arról, hogy a biztonsági tag megkapta a megfelelő engedélyt az Azure-erőforrás eléréséhez, olvassa el a Hozzáférés engedélyezése a Microsoft Entra-azonosítóval című témakört.
Az ARM-alapú hitelesítés esetében, ha például a szolgáltatásnevet veszi figyelembe, a konfigurációs migrálás az alábbiakat tartalmazza, ahol a hozzárendelt szerepkör nem változik:
Örökölt konfiguráció:
spring:
cloud:
azure:
client-id: ${AZURE_CLIENT_ID}
client-secret: ${AZURE_CLIENT_SECRET}
tenant-id: <tenant>
resource-group: ${EVENTHUB_RESOURCE_GROUP}
eventhub:
namespace: ${EVENTHUB_NAMESPACE}
Megjegyzés:
Az engedélyezett tenant-id
értékek a következők: common
, organizations
, consumers
vagy a bérlőazonosító. Ezekről az értékekről további információt a AADSTS50020 – Az identitásszolgáltatótól származó felhasználói fiók nem létezik a bérlőben című hiba helytelen végpontja (személyes és szervezeti fiókok) című szakaszában talál. Az egybérlős alkalmazás konvertálásával kapcsolatos információkért lásd : Egybérlős alkalmazás átalakítása több-bérlőssé a Microsoft Entra-azonosítón.
Modern konfigurációra, az Azure-előfizetés azonosítójának és erőforráscsoportjának tulajdonságaira van szükség:
spring:
cloud:
azure:
credential:
client-id: ${AZURE_CLIENT_ID}
client-secret: ${AZURE_CLIENT_SECRET}
profile:
tenant-id: <tenant>
subscription-id: ${AZURE_SUBSCRIPTION_ID}
eventhubs:
namespace: ${EVENTHUB_NAMESPACE}
resource:
resource-group: ${RESOURCE_GROUP}
Megjegyzés:
Az engedélyezett tenant-id
értékek a következők: common
, organizations
, consumers
vagy a bérlőazonosító. Ezekről az értékekről további információt a AADSTS50020 – Az identitásszolgáltatótól származó felhasználói fiók nem létezik a bérlőben című hiba helytelen végpontja (személyes és szervezeti fiókok) című szakaszában talál. Az egybérlős alkalmazás konvertálásával kapcsolatos információkért lásd : Egybérlős alkalmazás átalakítása több-bérlőssé a Microsoft Entra-azonosítón.
A Microsoft Entra ID-val történő hitelesítéshez és engedélyezéshez közvetlenül is migrálhat anélkül, hogy az ARM-be való kitérőt tenné. Győződjön meg arról, hogy a rendszerbiztonsági tagnak meg kell adnia a szükséges Data
szerepköröket az üzenetkezelési műveletekhez. A szolgáltatásnév és a felügyelt identitás konfigurációs példái a következők:
Szolgáltatásnévvel
spring: cloud: azure: credential: client-id: ${AZURE_CLIENT_ID} client-secret: ${AZURE_CLIENT_SECRET} profile: tenant-id: <tenant> eventhubs: namespace: ${EVENTHUB_NAMESPACE}
Megjegyzés:
Az engedélyezett tenant-id
értékek a következők: common
, organizations
, consumers
vagy a bérlőazonosító. Ezekről az értékekről további információt a AADSTS50020 – Az identitásszolgáltatótól származó felhasználói fiók nem létezik a bérlőben című hiba helytelen végpontja (személyes és szervezeti fiókok) című szakaszában talál. Az egybérlős alkalmazás konvertálásával kapcsolatos információkért lásd : Egybérlős alkalmazás átalakítása több-bérlőssé a Microsoft Entra-azonosítón.
Felügyelt identitással
spring: cloud: azure: credential: managed-identity-enabled: true client-id: ${AZURE_MANAGED_IDENTITY_CLIENT_ID} # Only needed when using a user-assigned managed identity eventhubs: namespace: ${EVENTHUB_NAMESPACE}
API-változások
Az alábbi táblázat az osztályleképezéseket mutatja be.azure-spring-cloud-stream-binder-eventhubs
spring-cloud-azure-stream-binder-eventhubs
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.integration.core.api.reactor.Checkpointer | com.azure.spring.messaging.checkpoint.Checkpointer |
com.azure.spring.integration.core.AzureHeaders | com.azure.spring.messaging.AzureHeaders |
com.azure.spring.integration.core.EventHubHeaders | com.azure.spring.messaging.eventhubs.support.EventHubsHeaders |
Az azure-spring-cloud-stream-binder-servicebus-*-tól a spring-cloud-azure-stream-binder-servicebusig
Ez az útmutató segítséget nyújt a spring-cloud-azure-stream-binder-servicebusra való migráláshoz az azure-spring-cloud-stream-binder-servicebus-queue vagy az azure-spring-cloud-stream-binder-servicebus-topic 2-es verziójából.
Általános információkért használja az alábbi hivatkozásokat:
- A 4.0-s változások áttekintéséhez tekintse meg a Bevezetés és a Migrálás előnyeit ismertető szakaszt.
- Ha többet szeretne megtudni a projekt elnevezésének stratégiai változásairól, tekintse meg az Elnevezési módosítások szakaszt.
- Ha tudni szeretné, hogyan használhat egy BOM-t az összes Spring Cloud Azure-kódtárhoz, tekintse meg a BOM szakaszt .
- A Spring Cloud Azure 4.0-s hitelesítésének kezeléséről a Hitelesítés módosítása című szakaszban olvashat.
- A migrálás során használható lehetőségekről
spring-boot-properties-migrator
az egyes SDK-k konfigurálása című szakaszban olvashat. - A globális és gyakori konfigurációs változásokról a Globális konfigurációk című szakaszban olvashat bővebben.
SDK-konfiguráció változásai
Fontos
A régi iratgyűjtők könyvtárai és azure-spring-cloud-stream-binder-servicebus-queue
azure-spring-cloud-stream-binder-servicebus-topic
most egyesítve vannak egybe spring-cloud-azure-stream-binder-servicebus
.
Fontos
A kötőanyag típusa a következőből és servicebus-topic
mintából servicebus-queue
servicebus
van kombinálva.
Az alábbi táblázat a következő új konfigurációs tulajdonságokat sorolja fel spring-cloud-azure-stream-binder-servicebus
:
Modern tulajdonságok | Leírás |
---|---|
spring.cloud.stream.servicebus.bindings.binding-name.producer.entity-type | Ha a küldési függvényt használja, be kell állítania az entitástípust, amelyet beállíthat témakörre vagy üzenetsorra. |
Az alábbi táblázat a következő tulajdonságleképezéseket azure-spring-cloud-stream-binder-servicebus-*
spring-cloud-azure-stream-binder-servicebus
mutatja:
Örökölt tulajdonságok | Modern tulajdonságok |
---|---|
spring.cloud.azure.resource-group | spring.cloud.azure.servicebus.resource.resource-group |
spring.cloud.azure.servicebus.transport-type | spring.cloud.azure.servicebus.client.transport-type |
spring.cloud.azure.servicebus.retry-options.retry-mode | spring.cloud.azure.servicebus.retry.mode |
spring.cloud.azure.servicebus.retry-options.max-retries | a spring.cloud.azure.servicebus.retry.exponential.max-retries vagy a spring.cloud.azure.servicebus.retry.fixed.max-retries függvényt a spring.cloud.azure.servicebus.retry.mode=fix vagy exponenciális függvénytől függően kell konfigurálni. |
spring.cloud.azure.servicebus.retry-options.delay | A spring.cloud.azure.servicebus.retry.exponenciális.base-delay vagy spring.cloud.azure.servicebus.retry.fixed.delay függvényt a spring.cloud.azure.servicebus.retry.mode=fix vagy exponenciális értéktől függően kell konfigurálni. |
spring.cloud.azure.servicebus.retry-options.max-delay | spring.cloud.azure.servicebus.retry.exponenciális.max-delay |
spring.cloud.azure.servicebus.retry-options.try-timeout | spring.cloud.azure.servicebus.retry.try-timeout |
spring.cloud.stream.servicebus.queue.bindings.* | spring.cloud.stream.servicebus.bindings.* |
spring.cloud.stream.servicebus.queue.bindings.binding-name.consumer.Konkurencia | spring.cloud.stream.servicebus.bindings.binding-name.consumer.max-concurrent-sessions/max-concurrent-calls |
spring.cloud.stream.servicebus.queue.bindings.binding-name.consumer.ellenőrzőpont mód | spring.cloud.stream.servicebus.bindings.binding-name.consumer.automatikus kiegészítés |
spring.cloud.stream.servicebus.topic.bindings.* | spring.cloud.stream.servicebus.bindings.* |
spring.cloud.stream.servicebus.topic.bindings.binding-name.consumer.Konkurencia | spring.cloud.stream.servicebus.bindings.binding-name.consumer.max-concurrent-sessions/max-concurrent-calls |
spring.cloud.stream.servicebus.topic.bindings.binding-name.consumer.ellenőrzőpont mód | spring.cloud.stream.servicebus.bindings.binding-name.consumer.automatikus kiegészítés |
Megjegyzés:
Az egyidejűség tulajdonság helyébe a sessionEnabled esetén a maxConcurrentSessions, a sessionsEnabled true
false
esetén pedig a maxConcurrentCalls lép.
Megjegyzés:
Az automatikus kiegészítés engedélyezése egyenlő az RECORD
ellenőrzőpont móddal, és ellenkezőleg a MANUAL
móddal.
Konfigurációs migrálási példák
Örökölt konfiguráció, példaként az üzenetsorra:
spring:
cloud:
azure:
servicebus:
connection-string: ${AZURE_SERVICEBUS_BINDER_CONNECTION_STRING}
stream:
function:
definition: consume;supply
bindings:
consume-in-0:
destination: ${AZURE_SERVICEBUS_QUEUE_NAME}
supply-out-0:
destination: ${AZURE_SERVICEBUS_QUEUE_NAME}
servicebus:
queue:
bindings:
consume-in-0:
consumer:
checkpoint-mode: MANUAL
Modern konfiguráció:
spring:
cloud:
azure:
servicebus:
connection-string: ${AZURE_SERVICEBUS_BINDER_CONNECTION_STRING}
stream:
function:
definition: consume;supply
bindings:
consume-in-0:
destination: ${AZURE_SERVICEBUS_QUEUE_NAME}
supply-out-0:
destination: ${AZURE_SERVICEBUS_QUEUE_NAME}
servicebus:
bindings:
consume-in-0:
consumer:
auto-complete: false
supply-out-0:
producer:
entity-type: queue #set as topic if needed
Ha a kapcsolati sztring helyett biztonsági tagokat használ, a 4.0-s verzió előtti verziókban az alkalmazás először az Azure Resource Managerhez (ARM) csatlakozik a megadott biztonsági taggal, majd lekéri a megadott névtér kapcsolati sztring ARM-lel. Végül az alkalmazás a lekért kapcsolati sztring használatával csatlakozik az Azure Service Bushoz. Ily módon a megadott biztonsági tagot közreműködői szerepkörrel kell megadni a társított Azure Service Bus-névtér lekéréséhez.
Az Azure Spring Apps 4.0-hoz kétféleképpen használhatja ki a biztonsági tagokat a hitelesítéshez. Az egyik továbbra is a tagok használatával csatlakozik az ARM-hez, és lekéri azokat a kapcsolati sztring, ahol a Contributor
szerepkör szükséges a tagok számára. A másik a biztonsági tagok segítségével hitelesíti a Microsoft Entra-azonosítót, majd közvetlenül csatlakozik az Azure Service Bushoz. Ebben az esetben a Contributor
szerepkörre már nincs szükség, míg az üzenetkezelési műveletekhez más Data
kapcsolódó szerepkörökre van szükség. Ha meg szeretné győződni arról, hogy a biztonsági tag megkapta a megfelelő engedélyt az Azure-erőforrás eléréséhez, olvassa el a Hozzáférés engedélyezése a Microsoft Entra-azonosítóval című témakört.
Az ARM-alapú hitelesítés esetében, ha például a szolgáltatásnevet veszi figyelembe, a konfigurációs migrálás az alábbiakat tartalmazza, ahol a hozzárendelt szerepkör nem változik:
Örökölt konfiguráció:
spring:
cloud:
azure:
client-id: ${AZURE_CLIENT_ID}
client-secret: ${AZURE_CLIENT_SECRET}
tenant-id: <tenant>
resource-group: ${SERVICEBUS_RESOURCE_GROUP}
servicebus:
namespace: ${SERVICEBUS_NAMESPACE}
Megjegyzés:
Az engedélyezett tenant-id
értékek a következők: common
, organizations
, consumers
vagy a bérlőazonosító. Ezekről az értékekről további információt a AADSTS50020 – Az identitásszolgáltatótól származó felhasználói fiók nem létezik a bérlőben című hiba helytelen végpontja (személyes és szervezeti fiókok) című szakaszában talál. Az egybérlős alkalmazás konvertálásával kapcsolatos információkért lásd : Egybérlős alkalmazás átalakítása több-bérlőssé a Microsoft Entra-azonosítón.
Modern konfigurációra, az Azure-előfizetés azonosítójának és erőforráscsoportjának tulajdonságaira van szükség:
spring:
cloud:
azure:
credential:
client-id: ${AZURE_CLIENT_ID}
client-secret: ${AZURE_CLIENT_SECRET}
profile:
tenant-id: <tenant>
subscription-id: ${AZURE_SUBSCRIPTION_ID}
servicebus:
namespace: ${SERVICEBUS_NAMESPACE}
resource:
resource-group: ${SERVICEBUS_RESOURCE_GROUP}
Megjegyzés:
Az engedélyezett tenant-id
értékek a következők: common
, organizations
, consumers
vagy a bérlőazonosító. Ezekről az értékekről további információt a AADSTS50020 – Az identitásszolgáltatótól származó felhasználói fiók nem létezik a bérlőben című hiba helytelen végpontja (személyes és szervezeti fiókok) című szakaszában talál. Az egybérlős alkalmazás konvertálásával kapcsolatos információkért lásd : Egybérlős alkalmazás átalakítása több-bérlőssé a Microsoft Entra-azonosítón.
A Microsoft Entra ID-val történő hitelesítéshez és engedélyezéshez közvetlenül is migrálhat anélkül, hogy az ARM-be való kitérőt tenné. Győződjön meg arról, hogy a rendszerbiztonsági tagnak meg kell adnia a szükséges Data
szerepköröket az üzenetkezelési műveletekhez. A szolgáltatásnév és a felügyelt identitás konfigurációs példái a következők:
Szolgáltatásnévvel
spring: cloud: azure: credential: client-id: ${AZURE_CLIENT_ID} client-secret: ${AZURE_CLIENT_SECRET} profile: tenant-id: <tenant> servicebus: namespace: ${SERVICEBUS_NAMESPACE}
Megjegyzés:
Az engedélyezett tenant-id
értékek a következők: common
, organizations
, consumers
vagy a bérlőazonosító. Ezekről az értékekről további információt a AADSTS50020 – Az identitásszolgáltatótól származó felhasználói fiók nem létezik a bérlőben című hiba helytelen végpontja (személyes és szervezeti fiókok) című szakaszában talál. Az egybérlős alkalmazás konvertálásával kapcsolatos információkért lásd : Egybérlős alkalmazás átalakítása több-bérlőssé a Microsoft Entra-azonosítón.
Felügyelt identitással
spring: cloud: azure: credential: managed-identity-enabled: true client-id: ${AZURE_MANAGED_IDENTITY_CLIENT_ID} # Only needed when using a user-assigned managed identity servicebus: namespace: ${SERVICEBUS_NAMESPACE}
API-változások
- Üzenetfejléc elvetése
AzureHeaders.RAW_ID
. UseServiceBusMessageHeaders.MESSAGE_ID
instead.
Az alábbi táblázat az osztályleképezéseket mutatja be.azure-spring-cloud-stream-binder-eventhubs
spring-cloud-azure-stream-binder-eventhubs
Örökölt osztály | Modern osztály |
---|---|
com.azure.spring.integration.core.AzureHeaders | com.azure.spring.messaging.AzureHeaders |
com.azure.spring.integration.servicebus.converter.ServiceBusMessageHeaders | com.azure.spring.messaging.servicebus.support.ServiceBusMessageHeaders |
com.azure.spring.integration.core.api.Checkpointer | com.azure.spring.messaging.checkpoint.Checkpointer |
azure-spring-cloud-messaging
A com.azure.spring:azure-spring-cloud-messaging
kódtár nem áll készen a 4.0-ra. A figyelőjegyzetek funkciója újratervezés alatt áll, ezért a @AzureMessageListener
, @AzureMessageListeners
és @EnableAzureMessaging
a széljegyzetek jelenleg nem támogatottak.