Abilitare le sessioni di messaggio per una coda bus di servizio di Azure o una sottoscrizione
Le sessioni del bus di servizio di Azure consentono la gestione congiunta e ordinata di sequenze non vincolate di messaggi correlati. Le sessioni possono essere usate in criteri First in, First out (FIFO) e di richiesta-risposta. Per altre informazioni, vedere Sessioni di messaggi. Questo articolo illustra diversi modi per abilitare le sessioni per una coda o una sottoscrizione bus di servizio.
Importante
- Il livello Basic del bus di servizio non supporta le sessioni. I livelli Standard e Premium supportano le sessioni. Per le differenze tra questi livelli, vedere Prezzi del bus di servizio.
- Non è possibile abilitare o disabilitare sessioni di messaggi dopo la creazione della coda o della sottoscrizione. È possibile farlo solo al momento della creazione della coda o della sottoscrizione.
Con il portale di Azure
Quando si crea una coda nel portale di Azure, selezionare Abilita sessioni come illustrato nell'immagine seguente.
Quando si crea una sottoscrizione per un argomento nella portale di Azure, selezionare Abilita sessioni come illustrato nell'immagine seguente.
Utilizzare l'interfaccia della riga di comando di Azure
Per creare una coda con sessioni di messaggi abilitate, usare il az servicebus queue create
comando con --enable-session
impostato su true
.
az servicebus queue create \
--resource-group myresourcegroup \
--namespace-name mynamespace \
--name myqueue \
--enable-session true
Per creare una sottoscrizione per un argomento con sessioni di messaggi abilitate, usare il az servicebus topic subscription create
comando con --enable-session
impostato su true
.
az servicebus topic subscription create \
--resource-group myresourcegroup \
--namespace-name mynamespace \
--topic-name mytopic \
--name mysubscription \
--enable-session true
Uso di Azure PowerShell
Per creare una coda con sessioni di messaggi abilitate, usare il New-AzServiceBusQueue
comando con -RequiresSession
impostato su $True
.
New-AzServiceBusQueue -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-QueueName myqueue `
-RequiresSession $True
Per creare una sottoscrizione per un argomento con sessioni di messaggi abilitate, usare il New-AzServiceBusSubscription
comando con -RequiresSession
impostato su true
.
New-AzServiceBusSubscription -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-TopicName mytopic `
-SubscriptionName mysubscription `
-RequiresSession $True
Uso del modello di Azure Resource Manager
Per creare una coda con sessioni di messaggi abilitate, impostare su requiresSession
true
nella sezione delle proprietà della coda. Per altre informazioni, vedere Informazioni di riferimento sui modelli di spazi dei nomi/code Microsoft.ServiceBus.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"serviceBusNamespaceName": {
"type": "string",
"metadata": {
"description": "Name of the Service Bus namespace"
}
},
"serviceBusQueueName": {
"type": "string",
"metadata": {
"description": "Name of the Queue"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"resources": [
{
"type": "Microsoft.ServiceBus/namespaces",
"apiVersion": "2018-01-01-preview",
"name": "[parameters('serviceBusNamespaceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard"
},
"properties": {},
"resources": [
{
"type": "Queues",
"apiVersion": "2017-04-01",
"name": "[parameters('serviceBusQueueName')]",
"dependsOn": [
"[resourceId('Microsoft.ServiceBus/namespaces', parameters('serviceBusNamespaceName'))]"
],
"properties": {
"requiresSession": true
}
}
]
}
]
}
Per creare una sottoscrizione per un argomento con sessioni di messaggi abilitate, impostare su requiresSession
true
nella sezione delle proprietà della sottoscrizione. Per altre informazioni, vedere Informazioni di riferimento sul modello Microsoft.ServiceBus namespaces/topics/subscriptions.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"service_BusNamespace_Name": {
"type": "string",
"metadata": {
"description": "Name of the Service Bus namespace"
}
},
"serviceBusTopicName": {
"type": "string",
"metadata": {
"description": "Name of the Topic"
}
},
"serviceBusSubscriptionName": {
"type": "string",
"metadata": {
"description": "Name of the Subscription"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"resources": [
{
"apiVersion": "2018-01-01-preview",
"name": "[parameters('service_BusNamespace_Name')]",
"type": "Microsoft.ServiceBus/namespaces",
"location": "[parameters('location')]",
"sku": {
"name": "Standard"
},
"properties": {},
"resources": [
{
"apiVersion": "2017-04-01",
"name": "[parameters('serviceBusTopicName')]",
"type": "topics",
"dependsOn": [
"[resourceId('Microsoft.ServiceBus/namespaces/', parameters('service_BusNamespace_Name'))]"
],
"properties": {
"maxSizeInMegabytes": 1024
},
"resources": [
{
"apiVersion": "2017-04-01",
"name": "[parameters('serviceBusSubscriptionName')]",
"type": "Subscriptions",
"dependsOn": [
"[parameters('serviceBusTopicName')]"
],
"properties": {
"requiresSession": true
}
}
]
}
]
}
]
}
Passaggi successivi
Provare gli esempi nel linguaggio preferito per esplorare bus di servizio di Azure funzionalità.
- esempi di libreria client bus di servizio di Azure per .NET (versione più recente)
- esempi di libreria client bus di servizio di Azure per Java (versione più recente)
- esempi di libreria client bus di servizio di Azure per Python
- esempi di libreria client bus di servizio di Azure per JavaScript
- esempi di libreria client bus di servizio di Azure per TypeScript
Trovare esempi per le librerie client .NET e Java precedenti di seguito:
- esempi di libreria client bus di servizio di Azure per .NET (legacy)
- esempi di libreria client bus di servizio di Azure per Java (legacy)
Il 30 settembre 2026 verranno ritirati le librerie bus di servizio di Azure SDK WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus e com.microsoft.azure.servicebus, che non sono conformi alle linee guida di Azure SDK. Il supporto del protocollo SBMP verrà terminato, quindi non sarà più possibile usare questo protocollo dopo il 30 settembre 2026. Eseguire la migrazione alle librerie più recenti di Azure SDK, che offrono aggiornamenti critici della sicurezza e funzionalità migliorate, prima di tale data.
Anche se le librerie precedenti possono ancora essere usate oltre il 30 settembre 2026, non riceveranno più il supporto e gli aggiornamenti ufficiali da Microsoft. Per altre informazioni, vedere l'annuncio di ritiro del supporto.