Compartilhar via


Desenvolver com o Agendador de Tarefas Duráveis (versão prévia)

O Agendador de Tarefas Duráveis é um provedor de back-end totalmente gerenciado de alto desempenho para Durable Functions com um painel de monitoramento pronto para uso. O Azure oferece duas estruturas de orquestração orientadas para desenvolvedores que funcionam com o Durable Functions para criar aplicativos: SDKs de Tarefas Duráveis e Funções Duráveis.

Neste artigo, você aprenderá a:

  • Executar o emulador do Agendador de Tarefas Duráveis
  • Execute operações CRUD em um agendador e hub de tarefas.

Saiba mais sobre os recursos do Agendador de Tarefas Duráveis, regiões com suporte e planos.

Emulador do Agendador de Tarefas Durável

O emulador do Agendador de Tarefas Duráveis só está disponível como uma imagem do Docker hoje.

  1. Efetue pull da imagem do docker que contém o emulador.

    docker pull mcr.microsoft.com/dts/dts-emulator:latest
    
  2. Executar o emulador.

    docker run -itP mcr.microsoft.com/dts/dts-emulator:latest
    

    Esse comando expõe um único hub de tarefas chamado default. Se você precisar de mais de um hub de tarefas, poderá definir a variável DTS_TASK_HUB_NAMES de ambiente no contêiner para uma lista delimitada por vírgulas de nomes de hub de tarefas, como no seguinte comando:

    docker run -itP -e DTS_TASK_HUB_NAMES=taskhub1,taskhub2,taskhub3 mcr.microsoft.com/dts/dts-emulator:latest
    

Pré-requisitos

Configurar a CLI

  1. Faça logon na CLI do Azure e verifique se você tem o mais recente instalado.

    az login
    az upgrade
    
  2. Instale a extensão da CLI do Agendador de Tarefas Duráveis.

    az extension add --name durabletask
    
  3. Se você já instalou a extensão da CLI do Agendador de Tarefas Duráveis, atualize para a versão mais recente.

    az extension add --upgrade --name durabletask
    

Criar um agendador e um hub de tarefas

  1. Crie um grupo de recursos.

    az group create --name YOUR_RESOURCE_GROUP --___location LOCATION
    
  2. Usando a extensão da durabletask CLI, crie um agendador.

    az durabletask scheduler create --name "YOUR_SCHEDULER" --resource-group "YOUR_RESOURCE_GROUP" --___location "LOCATION" --ip-allowlist "[0.0.0.0/0]" --sku-name "dedicated" --sku-capacity "1"
    

    O processo de criação pode levar até 15 minutos para ser concluído.

    Saída

    {
        "id": "/subscriptions/YOUR_SUBSCRIPTION_ID/resourceGroups/YOUR_RESOURCE_GROUP/providers/Microsoft.DurableTask/schedulers/YOUR_SCHEDULER",
        "___location": "northcentralus",
        "name": "YOUR_SCHEDULER",
        "properties": {
            "endpoint": "https://YOUR_SCHEDULER.northcentralus.durabletask.io",
            "ipAllowlist": [
                "0.0.0.0/0"
            ],
            "provisioningState": "Succeeded",
            "sku": {
                "capacity": 1,
                "name": "Dedicated",
                "redundancyState": "None"
            }
        },
        "resourceGroup": "YOUR_RESOURCE_GROUP",
        "systemData": {
            "createdAt": "2025-01-06T21:22:59Z",
            "createdBy": "YOUR_EMAIL@example.com",
            "createdByType": "User",
            "lastModifiedAt": "2025-01-06T21:22:59Z",
            "lastModifiedBy": "YOUR_EMAIL@example.com",
            "lastModifiedByType": "User"
        },
        "tags": {}
    }
    
  3. Criar um hub de tarefas.

    az durabletask taskhub create --resource-group YOUR_RESOURCE_GROUP --scheduler-name YOUR_SCHEDULER --name YOUR_TASKHUB
    

    Saída

    {
      "id": "/subscriptions/YOUR_SUBSCRIPTION_ID/resourceGroups/YOUR_RESOURCE_GROUP/providers/Microsoft.DurableTask/schedulers/YOUR_SCHEDULERS/taskHubs/YOUR_TASKHUB",
      "name": "YOUR_TASKHUB",
      "properties": {
        "provisioningState": "Succeeded"
      },
      "resourceGroup": "YOUR_RESOURCE_GROUP",
      "systemData": {
        "createdAt": "2024-09-18T22:13:56.5467094Z",
        "createdBy": "OBJECT_ID",
        "createdByType": "User",
        "lastModifiedAt": "2024-09-18T22:13:56.5467094Z",
        "lastModifiedBy": "OBJECT_ID",
        "lastModifiedByType": "User"
      },
      "type": "microsoft.durabletask/scheduler/taskhubs"
    }
    
  1. No portal do Azure, pesquise o Agendador de Tarefas Duráveis e selecione-o nos resultados.

    Captura de tela da pesquisa do Agendador de Tarefas Duráveis no portal.

  2. Clique em Criar para abrir o painel Azure Functions: Agendador de Tarefas Duráveis (versão prévia ).

    Captura de tela da página de criação para o Agendador de Tarefas Duráveis.

  3. Preencha os campos na guia Noções básicas . Clique em Examinar + criar. Depois que a validação for aprovada, clique em Criar.

    A implantação pode levar cerca de 15 a 20 minutos.

Exibir todos os recursos do Agendador de Tarefas Duráveis em uma assinatura

  1. Obtenha uma lista de todos os nomes de agendadores em uma assinatura por meio da execução do seguinte comando.

    az durabletask scheduler list --subscription <SUBSCRIPTION_ID>
    
  2. Você pode restringir os resultados a um grupo de recursos específico adicionando o --resource-group sinalizador.

    az durabletask scheduler list --subscription <SUBSCRIPTION_ID> --resource-group <RESOURCE_GROUP_NAME>
    

No portal do Azure, pesquise o Agendador de Tarefas Duráveis e selecione-o nos resultados.

Captura de tela da pesquisa do serviço Agendador de Tarefas Duráveis no portal.

Você pode ver a lista de recursos do agendador criados em todas as assinaturas às quais você tem acesso.

Exibir todos os hubs de tarefas em um Agendador de Tarefas Duráveis

  1. Recupere uma lista de hubs de tarefas em um agendador específico executando:

    az durabletask taskhub list --resource-group <RESOURCE_GROUP_NAME> --scheduler-name <SCHEDULER_NAME>
    

Você pode ver todos os hubs de tarefas criados em um agendador na visão geral do recurso no portal do Azure.

Captura de tela da aba de visão geral do Agendador de Tarefas Duráveis do portal.

Excluir o agendador e o hub de tarefas

  1. Exclua o agendador:

    az durabletask scheduler --resource-group YOUR_RESOURCE_GROUP --scheduler-name YOUR_SCHEDULER
    
  2. Excluir um hub de tarefas:

    az durabletask taskhub delete --resource-group YOUR_RESOURCE_GROUP --scheduler-name YOUR_SCHEDULER --name YOUR_TASKHUB
    
  1. Abra o recurso do agendador no portal do Azure e clique em Excluir:

    Captura de tela do recurso do agendador no portal realçando o botão excluir.

  2. Localize o agendador com o hub de tarefas que você deseja excluir e clique nesse hub de tarefas. Clique em Excluir:

    Captura de tela do recurso do hub de tarefas no portal realçando o botão excluir.

Configurar a autenticação baseada em identidade para o aplicativo acessar o Agendador de Tarefas Duráveis

O Agendador de Tarefas Duráveis dá suporte à autenticação de identidade gerenciada atribuída pelo usuário ou atribuída pelo sistema . As identidades atribuídas pelo usuário são recomendadas, pois não estão vinculadas ao ciclo de vida do aplicativo e podem ser reutilizados depois que o aplicativo é desprovisionado.

Saiba mais sobre o acesso baseado em identidade no Agendador de Tarefas Duráveis.

Acessar o painel do Agendador de Tarefas Duráveis

Atribua a função necessária à sua identidade de desenvolvedor (email) para obter acesso ao painel do Agendador de Tarefas Duráveis.

Próximas etapas

Para usar o Agendador de Tarefas Duráveis com Funções Duráveis:

Para usar o Agendador de Tarefas Duráveis com os SDKs de Tarefas Duráveis: