Etablera Service Bus-namnområden och entiteter dynamiskt

Azure Service Bus tillhandahåller bibliotek som hjälper dig att dynamiskt etablera Service Bus-namnområden och entiteter. Detta möjliggör komplexa distributioner och meddelandescenarier och gör det möjligt att programmatiskt avgöra vilka entiteter som ska etableras.

Översikt

Det finns två metoder som du kan använda för att hantera Azure Service Bus-resurser programmatiskt. Det första är att använda de Azure Resource Manager-baserade biblioteken, som gör att du kan hantera namnrymder, köer, ämnen, prenumerationer, regler och SAS-principer. Azure Resource Manager-baserade bibliotek har stöd för autentisering via Microsoft Entra-ID, men inte via anslutningssträng. Den andra metoden är att använda samma Service Bus-klientbibliotek som du använder för att skicka och ta emot meddelanden. Klientbiblioteken tillhandahåller även API:er som hjälper dig att hantera köer, ämnen, prenumerationer och regler i ett befintligt namnområde. De har stöd för autentisering med anslutningssträng. När du bestämmer vilken metod du ska använda bör du tänka på följande.

De Azure Resource Manager-baserade biblioteken har samma funktioner som Azure-portalen, CLI och PowerShell när det gäller att hantera Service Bus-namnområden och entiteter som köer, ämnen, prenumerationer osv. Om du har använt Azure-portalen, CLI eller PowerShell för dina hanteringsåtgärder och vill ha ett dynamiskt sätt att göra det kan dessa bibliotek vara ett bättre val för dig.

Men om du redan använder ett Service Bus-klientbibliotek för tjänstspecifika åtgärder som att skicka och ta emot meddelanden och du behöver hantera Service Bus-entiteter också, kan det vara enklare för dig att använda samma bibliotek. Klientbiblioteken har en ServiceBusAdministrationClient (anropad ServiceBusManagementClient i de äldre biblioteken) som tillhandahåller en delmängd av hanteringsfunktionerna som tillhandahålls av Azure Resource Manager-baserade bibliotek. Det måste betonas att även om de Azure Resource Manager-baserade biblioteken gör att du kan hantera både Service Bus-namnområden och entiteter, tillåter klientbiblioteken endast att hantera entiteter i ett befintligt namnområde men inte själva namnområdet.

Hantera med Hjälp av Azure Resource Manager-baserade bibliotek

Med Azure Resource Manager-baserade bibliotek kan du hantera namnrymder, köer, ämnen, prenumerationer, regler och SAS-principer. De stöder endast autentisering med Microsoft Entra-ID. De stöder inte anslutningssträng.

Språk Paket Dokumentation Exempel
.NET Azure.ResourceManager.ServiceBus API-referens för Microsoft.Azure.Management.ServiceBus .NET
Java azure-resourcemanager-servicebus API-referens för com.azure.resourcemanager.servicebus Java
JavaScript @azure/arm-servicebus API reference for @azure/arm-servicebus
Python azure-mgmt-servicebus API-referens för azure-mgmt-servicebus

Fluent .NET- och Java-bibliotek

Det finns en Fluent-version av De Azure Resource Manager-baserade biblioteken.

Språk Paket Dokumentation
.NET Microsoft.Azure.Management.ServiceBus.Fluent API-referens för Microsoft.Azure.Management.ServiceBus.Fluent
Java azure-resourcemanager-servicebus API-referens för com.azure.resourcemanager.servicebus.fluent

Hantera med Hjälp av Service Bus-klientbibliotek

Service Bus-klientbibliotek som används för åtgärder som att skicka och ta emot meddelanden kan också användas för att hantera köer, ämnen, prenumerationer och regler i ett befintligt Service Bus-namnområde. Den här funktionen är tillgänglig via ServiceBusAdministrationClient i de senaste biblioteken ServiceBusManagementClient och via i de äldre biblioteken. Vi rekommenderar starkt att du använder de senaste biblioteken.

De senaste Service Bus-biblioteken

Språk Paket Dokumentation Exempel
.NET Azure.Messaging.ServiceBus ServiceBusAdministrationClient .NET
Java azure-messaging-servicebus ServiceBusAdministrationAsyncClient, ServiceBusAdministrationClient Java
JavaScript @azure/service-bus ServiceBusAdministrationClient JavaScript/TypeScript
Python azure-servicebus ServiceBusAdministrationClient Python

Äldre Service Bus-bibliotek

Språk Paket Dokumentation Exempel
.NET Microsoft.Azure.ServiceBus ManagementClient .NET
Java azure-mgmt-servicebus ManagementClientAsync, ManagementClient Java

Den 30 september 2026 drar vi tillbaka Azure Service Bus SDK-biblioteken WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus och com.microsoft.azure.servicebus, som inte följer Riktlinjerna för Azure SDK. Vi kommer också att avsluta stödet för SBMP-protokollet, så du kommer inte längre att kunna använda det här protokollet efter den 30 september 2026. Migrera till de senaste Azure SDK-biblioteken, som erbjuder kritiska säkerhetsuppdateringar och förbättrade funktioner, före det datumet.

Även om de äldre biblioteken fortfarande kan användas efter den 30 september 2026 får de inte längre officiell support och uppdateringar från Microsoft. Mer information finns i meddelandet om supportavgång.

Nästa steg

  • Skicka meddelanden till och ta emot meddelanden från kön med det senaste Service Bus-biblioteket: .NET, Java, JavaScript, Python
  • Skicka meddelanden till ämnet och ta emot meddelanden från prenumerationen med det senaste Service Bus-biblioteket: .NET, Java, JavaScript, Python