Поделиться через


Разработка с планировщиком надёжных задач

Планировщик устойчивых задач — это высокопроизводительный полностью управляемый поставщик серверной части для устойчивых задач с помощью встроенной панели мониторинга. Azure предлагает две ориентированные на разработчиков платформы оркестрации, которые работают с планировщиком Durable Task для создания приложений: Durable Task SDK и Durable Functions.

Из этой статьи вы узнаете:

  • Запустите эмулятор Durable Task Scheduler
  • Выполнение операций CRUD в планировщике и концентраторе задач.

Дополнительные сведения о функциях планировщика устойчивых задач, поддерживаемых регионах и планах.

Эмулятор долговечного планировщика задач

Эмулятор планировщика устойчивых задач доступен только в качестве образа Docker сегодня.

  1. Загрузите образ Docker, содержащий эмулятор.

    docker pull mcr.microsoft.com/dts/dts-emulator:latest
    
  2. Запустите эмулятор.

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

    Эта команда предоставляет единый концентратор задач с именем default. Если требуется несколько концентраторов задач, можно задать переменную DTS_TASK_HUB_NAMES среды в контейнере в список имен концентраторов задач с разделителями-запятыми, как показано в следующей команде:

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

Необходимые условия

Настройка CLI

  1. Войдите в Azure CLI и убедитесь, что у вас установлена последняя версия.

    az login
    az upgrade
    
  2. Установите расширение CLI планировщика устойчивых задач.

    az extension add --name durabletask
    
  3. Если вы уже установили расширение CLI планировщика устойчивых задач, обновите его до последней версии.

    az extension update --name durabletask
    
  4. Проверьте установленную версию:

    az extension show --name durabletask
    

Узнайте больше о различных командах, которые можно использовать. az durabletask

Создание планировщика и концентратора задач

  1. Создайте группу ресурсов.

    az group create --name YOUR_RESOURCE_GROUP --location LOCATION
    
  2. durabletask С помощью расширения CLI создайте планировщик.

    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"
    

    Процесс создания может занять до 15 минут.

    Выходные данные

    {
        "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. Создание концентратора задач.

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

    Выходные данные

    {
      "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. На портале Azure найдите планировщик задач Durable Task Scheduler и выберите его из результатов.

    Снимок экрана: поиск планировщика устойчивых задач на портале.

  2. Нажмите кнопку "Создать", чтобы открыть область планировщика устойчивых задач .

    Снимок экрана: страница создания для планировщика устойчивых задач.

  3. Заполните поля на вкладке "Основные сведения". Нажмите кнопку "Рецензирование и создание".

  4. После завершения проверки щелкните Создать.

    Развертывание может занять около 15–20 минут.

Просмотр всех ресурсов планировщика устойчивых задач в подписке

  1. Получите список всех имен планировщика в подписке, выполнив следующую команду.

    az durabletask scheduler list --subscription <SUBSCRIPTION_ID>
    
  2. Результаты можно сузить до определенной группы ресурсов, добавив --resource-group флаг.

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

На портале Azure найдите планировщик задач Durable Task Scheduler и выберите его из результатов.

Снимок экрана: поиск службы планировщика устойчивых задач на портале.

Вы можете видеть список ресурсов планировщика, созданных во всех подписках, к которым у вас есть доступ.

Просмотр всех центров задач в планировщике устойчивых задач

Получите список центров задач в определенном планировщике, выполнив следующие действия:

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

В Azure Portal на странице Overview ресурса отображаются все центры задач, созданные в планировщике.

Снимок экрана вкладки обзора Durable Task Scheduler на портале.

Удаление планировщика и концентратора задач

  1. Удалите планировщик:

    az durabletask scheduler --resource-group YOUR_RESOURCE_GROUP --scheduler-name YOUR_SCHEDULER
    
  2. Удаление концентратора задач:

    az durabletask taskhub delete --resource-group YOUR_RESOURCE_GROUP --scheduler-name YOUR_SCHEDULER --name YOUR_TASKHUB
    
  1. Откройте ресурс планировщика на портале Azure и нажмите кнопку "Удалить".

    Скриншот ресурса планировщика в портале с выделенной кнопкой удаления.

  2. Найдите планировщик с концентратором задач, который вы хотите удалить, а затем перейдите в этот концентратор задач. Нажмите кнопку "Удалить":

    Снимок экрана ресурса центра задач в портале, где выделена кнопка удаления.

Настройка проверки подлинности на основе удостоверений для приложения для доступа к планировщику долговременных задач

Планировщик устойчивых задач поддерживает только проверку подлинности управляемой идентификации, назначаемой пользователем или назначаемой системой. Рекомендуется использовать идентификаторы, назначенные пользователем, так как они не привязаны к жизненному циклу приложения и могут повторно использоваться после удаления приложения.

Узнайте больше о доступе, основанном на идентификации, в диспетчере устойчивых задач.

Получите доступ к панели мониторинга Durable Task Scheduler

Назначьте необходимую роль идентификатору разработчика (электронной почте), чтобы получить доступ к панели мониторинга планировщика устойчивых задач.

Дальнейшие действия

Для использования планировщика долговременных задач с долговременными функциями:

Для использования планировщика устойчивых задач с пакетами SDK для устойчивых задач: