Habilitar o particionamento para um namespace Premium do Barramento de Serviço do Azure
As partições do Barramento de Serviço permitem que filas e tópicos, ou entidades de mensagens, sejam particionados entre diversos agentes de mensagens. O particionamento faz com que a taxa de transferência geral de uma entidade particionada não seja mais limitada pelo desempenho de um único agente de mensagens. Filas e tópicos particionados podem conter todos os recursos avançados do Barramento de Serviço, como o suporte a transações e sessões. Para saber mais, confira Tópicos e filas particionados. Este artigo mostra diferentes maneiras de habilitar o particionamento para um namespace Premium do Barramento de Serviço. Todas as entidades nesse namespace serão particionadas.
Observação
- O particionamento pode ser habilitado durante a criação do namespace no SKU Premium.
- Não permitimos a criação de entidades não particionadas em um namespace particionado.
- Não é possível alterar a opção de particionamento em qualquer namespace existente. O número de partições só pode ser definido durante a criação do namespace.
- As unidades do sistema de mensagens atribuídas são sempre um multiplicador da quantidade de partições em um namespace e são distribuídas igualmente entre as partições. Por exemplo, em um namespace com 16MU e quatro partições, cada partição receberá 4MU.
- Ao criar um namespace particionado em uma região que dá suporte a Zonas de Disponibilidade, isso será habilitado automaticamente no namespace.
- Várias partições com unidades do sistema de mensagens (MU) inferiores oferecem um melhor desempenho em uma única partição com MUs mais altas.
- Ao usar o recurso de recuperação de desastre geográfico do Barramento de Serviço, certifique-se de não emparelhar um namespace particionado com um namespace não particionado.
- Não é possível migrar um namespace de SKU padrão para um namespace particionado de SKU Premium.
- Atualmente, o JMS não é suportado em namespaces particionados.
- No momento, o recurso está disponível em todas as regiões, exceto no Oeste da Índia.
Usar o portal do Azure
Ao criar um namespace no portal do Azure, defina o Particionamento como Habilitado e escolha o número de partições, conforme mostrado na imagem a seguir.
Usar a CLI do Azure
Para criar um namespace com particionamento habilitado, use o comando az servicebus namespace create
com --premium-messaging-partitions
definido como um número maior que 1.
az servicebus namespace create \
--resource-group myresourcegroup \
--name mynamespace \
--location westus
--sku Premium
--premium-messaging-partitions 4
Usar PowerShell do Azure
Para criar um namespace com particionamento habilitado, use o comando New-AzServiceBusNamespace
com -PremiumMessagingPartition
definido como um número maior que 1.
New-AzServiceBusNamespace -ResourceGroupName myresourcegroup `
-Name mynamespace `
-Location westus `
-PremiumMessagingPartition 4
Usar o modelo do Azure Resource Manager
Para criar um namespace com particionamento habilitado, defina partitions
como um número maior que 1 na seção de propriedades do namespace. No exemplo abaixo, um namespace particionado é criado com quatro partições e uma unidade do sistema de mensagens atribuída a cada uma delas. Para saber mais, confira Referência de modelo dos namespaces do 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"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"resources": [
{
"type": "Microsoft.ServiceBus/namespaces",
"apiVersion": "2022-10-01-preview",
"name": "[parameters('serviceBusNamespaceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Premium",
"capacity": 4
},
"properties": {
"premiumMessagingPartitions": 4
}
}
]
}
Próximas etapas
Experimente os exemplos no idioma de sua escolha para explorar os recursos do Barramento de Serviço do Azure.
- Exemplos da biblioteca de clientes do Barramento de Serviço do Azure para .NET (mais recentes)
- Amostras da biblioteca de clientes do Barramento de Serviço do Azure para Java (mais recentes)
- Exemplos da biblioteca de clientes do Barramento de Serviço do Azure para Python
- Exemplos da biblioteca de clientes do Barramento de Serviço do Azure para JavaScript
- Exemplos da biblioteca de clientes do Barramento de Serviço do Azure para TypeScript