Partilhar via


Desenvolva com o Agendador de Tarefas Resilientes

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

Neste artigo, você aprende a:

  • Execute o emulador do Durable Task Scheduler
  • Execute operações CRUD em um agendador e hub de tarefas.

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

Emulador durável do Agendador de Tarefas

Atualmente, o emulador do Durable Task Scheduler só está disponível como uma imagem do Docker.

  1. Puxe a imagem Docker que contenha o emulador.

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

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

    Este 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 como uma lista delimitada por vírgulas de nomes de hub de tarefas, como no comando a seguir:

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

Pré-requisitos

Configurar a CLI

  1. Inicie sessão na CLI do Azure e certifique-se de que tem a mais recente instalada.

    az login
    az upgrade
    
  2. Instale a extensão CLI do Durable Task Scheduler.

    az extension add --name durabletask
    
  3. Se você já instalou a extensão CLI do Durable Task Scheduler, atualize para a versão mais recente.

    az extension update --name durabletask
    
  4. Verifique a sua versão instalada:

    az extension show --name durabletask
    

Saiba mais sobre os vários az durabletask comandos que pode usar.

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 durabletask extensão 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.

    Realização

    {
        "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. Crie um hub de tarefas.

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

    Realização

    {
      "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, procure Agendador de Tarefas Duráveis e selecione-o nos resultados.

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

  2. Clique em Criar para abrir o painel Azure Functions: Durable Task Scheduler .

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

  3. Preencha os campos no separador Básico. Clique em Rever + criar.

    Observação

    O SKU de Consumo está atualmente em pré-visualização. Saiba mais sobre as combinações de SKU e framework de orquestração recomendadas para uso em produção.

  4. Quando 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 executando o 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, procure Agendador de Tarefas Duráveis e selecione-o nos resultados.

Captura de ecrã da pesquisa pelo 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ável

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 ecrã do separador de visão geral do Agendador de Tarefas Duráveis no 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 ecrã do recurso do hub de tarefas no portal realçando o botão eliminar.

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

O Agendador de Tarefas Durável suporta apenas a autenticação de identidade gerida atribuída ao utilizador ou ao 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 reutilizadas depois que o aplicativo for desprovisionado.

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

Acesse o painel do Agendador de Tarefas Duráveis

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

Próximos passos

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

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