Povolení automatického předávání pro fronty a předplatná Služby Azure Service Bus

Funkce automatického předávání služby Service Bus umožňuje zřetězovat frontu nebo odběr do jiné fronty nebo tématu, která je součástí stejného oboru názvů. Když je povolené automatické přeposílání, Service Bus automaticky odebere zprávy umístěné v první frontě nebo odběru (zdroji) a umístí je do druhé fronty nebo tématu (cíl). Stále je možné odeslat zprávu přímo cílové entitě. Další informace najdete v tématu Řetězení entit služby Service Bus s automatickým předáváním. Tento článek ukazuje různé způsoby povolení automatického předávání front a předplatných služby Service Bus.

Důležité

Úroveň Basic služby Service Bus nepodporuje funkci automatického předávání. Funkce podporují úrovně Standard a Premium. Rozdíly mezi těmito úrovněmi najdete v tématu Ceny služby Service Bus.

Pomocí webu Azure Portal

Při vytváření fronty nebo odběrutématu na webu Azure Portal vyberte Přeposlat zprávy do fronty nebo tématu, jak je znázorněno v následujících příkladech. Potom určete, jestli chcete zprávy přeposlat do fronty nebo tématu. V tomto příkladu je vybrána možnost Fronta a je vybrána fronta ze stejného oboru názvů.

Vytvoření fronty s povoleným automatickým předáváním

Enable auto forward at the time of the queue creation

Vytvoření předplatného pro téma s povoleným automatickým předáváním

Enable auto forward at the time of the subscription creation

Aktualizace nastavení automatického přeposílání pro existující frontu

Na stránce Přehled fronty služby Service Bus vyberte aktuální hodnotu pro nastavení Předávání zpráv. V následujícím příkladu je aktuální hodnota Zakázáno. V okně Přeposlat zprávy do fronty nebo tématu můžete vybrat frontu nebo téma, ve kterém chcete zprávy přeposlat.

Enable auto forward for an existing queue

Aktualizace nastavení automatického přeposílání pro stávající předplatné

Na stránce Přehled vašeho předplatného služby Service Bus vyberte aktuální hodnotu pro nastavení Předávání zpráv. V následujícím příkladu je aktuální hodnota Zakázáno. V okně Přeposlat zprávy do fronty nebo tématu můžete vybrat frontu nebo téma, ve kterém chcete zprávy přeposlat.

Enable auto forward for an existing subscription

Použití Azure CLI

Pokud chcete vytvořit frontu s povoleným automatickým předáváním, použijte az servicebus queue create příkaz s --forward-to nastaveným názvem fronty nebo tématu, do kterého chcete zprávy přeposlat.

az servicebus queue create \
    --resource-group myresourcegroup \
    --namespace-name mynamespace \
    --name myqueue \
    --forward-to myqueue2

Pokud chcete aktualizovat nastavení automatického přeposílání pro existující frontu, použijte az servicebus queue update příkaz s nastaveným --forward-to názvem fronty nebo tématu, do kterého chcete zprávy přeposlat.

az servicebus queue update \
    --resource-group myresourcegroup \
    --namespace-name mynamespace \
    --name myqueue \
    --forward-to myqueue2

Pokud chcete vytvořit odběr tématu s povoleným automatickým přeposíláním, použijte az servicebus topic subscription create příkaz s --forward-to nastaveným názvem fronty nebo tématu, do kterého chcete zprávy přeposlat.

az servicebus topic subscription create \
    --resource-group myresourcegroup \
    --namespace-name mynamespace \
    --topic-name mytopic \
    --name mysubscription \
    --forward-to myqueue2

Pokud chcete aktualizovat nastavení automatického přeposílání odběru tématu, použijte az servicebus topic subscription update příkaz s nastaveným --forward-to názvem fronty nebo tématu, do kterého chcete zprávy přeposlat.

az servicebus topic subscription create \
    --resource-group myresourcegroup \
    --namespace-name mynamespace \
    --topic-name mytopic \
    --name mysubscription \
    --forward-to myqueue2

Použití Azure Powershell

Pokud chcete vytvořit frontu s povoleným automatickým předáváním, použijte New-AzServiceBusQueue příkaz s -ForwardTo nastaveným názvem fronty nebo tématu, do kterého chcete zprávy přeposlat.

New-AzServiceBusQueue -ResourceGroup myresourcegroup `
    -NamespaceName mynamespace `
    -QueueName myqueue `
    -ForwardTo myqueue2

Pokud chcete aktualizovat nastavení automatického předávání pro existující frontuSet-AzServiceBusQueue, použijte příkaz, jak je znázorněno v následujícím příkladu.

$queue=Get-AzServiceBusQueue -ResourceGroup myresourcegroup `
    -NamespaceName mynamespace `
    -QueueName myqueue 

$queue.ForwardTo='myqueue2'

Set-AzServiceBusQueue -ResourceGroup myresourcegroup `
    -NamespaceName mynamespace `
    -QueueName myqueue `
    -QueueObj $queue

Pokud chcete vytvořit odběr tématu s povoleným automatickým přeposíláním, použijte New-AzServiceBusSubscription příkaz s -ForwardTo nastaveným názvem fronty nebo tématu, do kterého chcete zprávy přeposlat.

New-AzServiceBusSubscription -ResourceGroup myresourcegroup `
    -NamespaceName mynamespace `
    -TopicName mytopic `
    -SubscriptionName mysubscription `
    -ForwardTo myqueue2

Pokud chcete aktualizovat nastavení automatického předávání pro stávající předplatné, podívejte se na následující příklad.

$subscription=Get-AzServiceBusSubscription -ResourceGroup myresourcegroup `
    -NamespaceName mynamespace `
    -TopicName mytopic `
    -SubscriptionName mysub

$subscription.ForwardTo='mytopic2'

Set-AzServiceBusSubscription -ResourceGroup myresourcegroup `
    -NamespaceName mynamespace `
    -Name mytopic `
    -SubscriptionName mysub `
    -SubscriptionObj $subscription 

Pomocí šablony Azure Resource Manageru

Pokud chcete vytvořit frontu s povoleným automatickým předáváním, nastavte forwardTo v části Vlastností fronty název fronty nebo téma, do kterého chcete zprávy přeposlat. Další informace naleznete v tématu Microsoft.ServiceBus namespaces/queues template reference.

{
  "$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": {
            "forwardTo": "myqueue2"
          }
        }
      ]
    }
  ]
}

Pokud chcete vytvořit odběr tématu s povoleným automatickým předáváním, nastavte forwardTo v části Vlastností fronty název fronty nebo téma, na které chcete zprávy přeposlat. Další informace najdete v tématu Microsoft.ServiceBus – obory názvů/topics/subscriptions template reference.

{
  "$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": {
                "forwardTo": "myqueue2"
              }
            }
          ]
        }
      ]
    }
  ]
}

.NET

Azure.Messaging.ServiceBus (nejnovější)

Funkci automatického předávání můžete povolit nastavením CreateQueueOptions.ForwardTo nebo CreateSubscriptionOptions.ForwardTo a pak pomocí metod CreateQueueAsync nebo CreateSubscriptionAsync, které přebírají CreateQueueOptions nebo CreateSubscriptionOptions parametry.

Microsoft.Azure.ServiceBus (starší verze)

Automatické přecházení můžete povolit nastavením QueueDescription.ForwardTo nebo SubscriptionDescription.ForwardTo pro zdroj, jak je znázorněno v následujícím příkladu:

SubscriptionDescription srcSubscription = new SubscriptionDescription (srcTopic, srcSubscriptionName);
srcSubscription.ForwardTo = destTopic;
namespaceManager.CreateSubscription(srcSubscription));

30. září 2026 vyřadíme knihovny sady SDK služby Azure Service Bus pro WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus a com.microsoft.azure.servicebus, které nevyhovují pokynům sady Azure SDK. Také ukončíme podporu protokolu SBMP, takže tento protokol už nebudete moct používat po 30. září 2026. Před tímto datem migrujte na nejnovější knihovny sady Azure SDK, které nabízejí důležité aktualizace zabezpečení a vylepšené funkce.

I když starší knihovny je možné používat i po 30. září 2026, nebudou už od Microsoftu dostávat oficiální podporu a aktualizace. Další informace najdete v oznámení o vyřazení podpory.

Java

azure-messaging-servicebus (nejnovější)

Funkci automatického předávání můžete povolit pomocí metody CreateQueueOptions.setForwardTo(String forwardTo) nebo CreateSubscriptionOptions.setForwardTo(String forwardTo) a pak pomocí metody createQueue nebo metody createSubscription, která převezme CreateQueueOptions nebo CreateSubscriptionOptions parametry.

azure-servicebus (starší verze)

Automatické přecházení můžete povolit pomocí QueueDescription.setForwardTo(String forwardTo) nebo SubscriptionDescription.setForwardTo(String forwardTo) pro zdroj.

30. září 2026 vyřadíme knihovny sady SDK služby Azure Service Bus pro WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus a com.microsoft.azure.servicebus, které nevyhovují pokynům sady Azure SDK. Také ukončíme podporu protokolu SBMP, takže tento protokol už nebudete moct používat po 30. září 2026. Před tímto datem migrujte na nejnovější knihovny sady Azure SDK, které nabízejí důležité aktualizace zabezpečení a vylepšené funkce.

I když starší knihovny je možné používat i po 30. září 2026, nebudou už od Microsoftu dostávat oficiální podporu a aktualizace. Další informace najdete v oznámení o vyřazení podpory.

Další kroky

Vyzkoušejte ukázky v jazyce podle vašeho výběru a prozkoumejte funkce služby Azure Service Bus.

Ukázky pro starší klientské knihovny .NET a Java najdete níže:

30. září 2026 vyřadíme knihovny sady SDK služby Azure Service Bus pro WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus a com.microsoft.azure.servicebus, které nevyhovují pokynům sady Azure SDK. Také ukončíme podporu protokolu SBMP, takže tento protokol už nebudete moct používat po 30. září 2026. Před tímto datem migrujte na nejnovější knihovny sady Azure SDK, které nabízejí důležité aktualizace zabezpečení a vylepšené funkce.

I když starší knihovny je možné používat i po 30. září 2026, nebudou už od Microsoftu dostávat oficiální podporu a aktualizace. Další informace najdete v oznámení o vyřazení podpory.