Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
WebJobs — это функция Azure App Service, которая позволяет запускать программу или скрипт в том же экземпляре, что и веб-приложение. Все планы службы приложений поддерживают веб-задания без дополнительной платы. В этом учебнике описано, как создать запланированное (активируемое) веб-задание с использованием предпочитаемого стека разработки.
Предпосылки
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Существующее приложение службы приложений .NET 9.
- Функция «Всегда включено » должна быть включена в приложении.
- Убедитесь, что параметр приложения
WEBSITE_SKIP_RUNNING_KUDUAGENT
установлен на значениеfalse
.
Подготовьте веб-задание локально
На этом шаге вы создадите базовый проект .NET WebJob и перейдете к корню проекта.
dotnet new console -n webjob –framework net9.0 cd webjob
Затем замените
Program.cs
на следующий код, который записывает текущее время в консоль:using System; class Program { static void Main() { DateTimeOffset now = DateTimeOffset.Now; Console.WriteLine("Current time with is: " + now.ToString("hh:mm:ss tt zzz")); } }
Из каталога webjob запустите веб-задание, чтобы подтвердить, что текущее время выводится на консоль:
dotnet run
Вы должны увидеть результат, аналогичный приведенному ниже:
Current time with is: 07:53:07 PM -05:00
Убедившись, что приложение работает, соберите его и перейдите в родительский каталог:
dotnet build --self-contained cd ..
Далее мы создадим
run.sh
, используя следующий код:#!/bin/bash dotnet webjob/bin/Debug/net9.0/webjob.dll
Теперь упакуйте все файлы в .zip, как показано ниже:
zip webjob.zip run.sh webjob/bin/Debug/net9.0/*
Создание запланированного веб-задания в Azure
На портале Azure перейдите на страницу Служба приложений приложения службы приложений.
В левой области выберите веб-задания, а затем нажмите кнопку "Добавить".
Введите параметры добавления веб-заданий , указанные в таблице, а затем нажмите кнопку "Создать веб-задание". В поле «Загрузка файла» обязательно выберите .zip файл, который вы создали или загрузили ранее.
Настройки ценность Описание Имя веб-задача Имя WebJob. Должен начинаться с буквы или числа и не должен содержать специальные символы, отличные от "-" и "_". Отправка файлов webjob.zip Файл .zip , содержащий исполняемый файл или файл скрипта. Поддерживаемые типы файлов перечислены в разделе поддерживаемых типов файлов . Тип Активировано Указывает, когда выполняется веб-задание: непрерывное или триггерное. Триггеры Запланировано Запланированные или ручные. Убедитесь, что функция «Всегда включена» активирована для надежной работы расписания. Выражение CRON 0 0/1 * * * * Для этого быстрого начала мы используем ежеминутное расписание. Дополнительные сведения о синтаксисе см. в разделе Выражения CRON . Новое веб-задание появится на странице Веб-задания. Если появится сообщение о том, что веб-задание было добавлено, но вы его не видите, выберите Обновить.
Запланированное веб-задание выполняется по расписанию, определенному выражением CRON.
WebJobs — это функция Azure App Service, которая позволяет запускать программу или скрипт в том же экземпляре, что и веб-приложение. Все планы обслуживания приложений поддерживают WebJobs без дополнительной платы. В этом примере используется запланированное (активированное) веб-задание для вывода системного времени раз в минуту.
Предпосылки
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Существующее приложение на Python в службе приложений.
- Функция «Всегда включено » должна быть включена в приложении.
- Убедитесь, что параметр приложения
WEBSITE_SKIP_RUNNING_KUDUAGENT
установлен на значениеfalse
.
Скачать пример веб-задания
Вы можете скачать готовый пример проекта , чтобы быстро приступить к работе. Пример включает два файла: webjob.py
и run.sh
.
Скрипт webjob.py
Python выводит текущее время в консоль, как показано ниже:
import datetime
current_datetime = datetime.datetime.now()
print(current_datetime) # Output: 2025-03-27 10:27:21.240752
Файл run.sh
, вызывает WebJob.py, как показано ниже:
#!/bin/bash
/opt/python/3/bin/python3.13 webjob.py
Создание запланированного веб-задания
На портале Azure перейдите на страницу Служба приложений приложения службы приложений.
В левой области выберите веб-задания, а затем нажмите кнопку "Добавить".
Введите параметры добавления веб-заданий , указанные в таблице, а затем нажмите кнопку "Создать веб-задание". В поле Загрузка файла обязательно выберите .zip файл, загруженный ранее в разделе Загрузка примера веб-задания .
Настройки ценность Описание Имя веб-задача Имя WebJob. Должен начинаться с буквы или числа и не должен содержать специальные символы, отличные от "-" и "_". Отправка файлов App-Service-Python-WebJobs-Quickstart-Main.zip Файл .zip , содержащий исполняемый файл или файл скрипта. Поддерживаемые типы файлов перечислены в разделе поддерживаемых типов файлов . Тип Активировано Указывает, когда выполняется веб-задание: непрерывное или триггерное. Триггеры Запланировано Запланированные или ручные. Убедитесь, что функция «Всегда включена» активирована для надежной работы расписания. Выражение CRON 0 0/1 * * * * Для этого быстрого начала мы используем ежеминутное расписание. Дополнительные сведения о синтаксисе см. в разделе Выражения CRON . Новое веб-задание появится на странице Веб-задания. Если появится сообщение о том, что веб-задание было добавлено, но вы его не видите, выберите Обновить.
Запланированное веб-задание выполняется по расписанию, определенному выражением CRON.
WebJobs — это функция Azure App Service, которая позволяет запускать программу или скрипт в том же экземпляре, что и веб-приложение. Все планы обслуживания приложений поддерживают WebJobs без дополнительной платы. В этом примере используется запланированное (активированное) веб-задание для вывода системного времени раз в минуту.
Предпосылки
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Существующее приложение App Service Node.
- Функция «Всегда включено » должна быть включена в приложении.
- Убедитесь, что параметр приложения
WEBSITE_SKIP_RUNNING_KUDUAGENT
установлен на значениеfalse
.
Скачать пример веб-задания
Вы можете скачать готовый пример проекта , чтобы быстро приступить к работе. Пример включает два файла: webjob.js
и run.sh
.
JavaScript, webjob.js
, выводит текущее время в консоль, как показано ниже:
// Import the 'Date' object from JavaScript
const currentTime = new Date();
// Format the time as a string
const formattedTime = currentTime.toLocaleTimeString();
// Output the formatted time to the console
console.log(`Current system time is: ${formattedTime}`);
Файл run.sh
, вызывает webjob.js, как показано ниже:
#!/bin/bash
node webjob.js
Создание запланированного веб-задания
На портале Azure перейдите на страницу Служба приложений приложения службы приложений.
В левой области выберите веб-задания, а затем нажмите кнопку "Добавить".
Введите параметры добавления веб-заданий , указанные в таблице, а затем нажмите кнопку "Создать веб-задание". В поле Загрузка файла обязательно выберите .zip файл, загруженный ранее в разделе Загрузка примера веб-задания .
Настройки ценность Описание Имя веб-задача Имя WebJob. Должен начинаться с буквы или числа и не должен содержать специальные символы, отличные от "-" и "_". Отправка файлов App-Service-Node-WebJobs-Quickstart-Main.zip Файл .zip , содержащий исполняемый файл или файл скрипта. Поддерживаемые типы файлов перечислены в разделе поддерживаемых типов файлов . Тип Активировано Указывает, когда выполняется веб-задание: непрерывное или триггерное. Триггеры Запланировано Запланированные или ручные. Убедитесь, что функция «Всегда включена» активирована для надежной работы расписания. Выражение CRON 0 0/1 * * * * Для этого быстрого начала мы используем ежеминутное расписание. Дополнительные сведения о синтаксисе см. в разделе Выражения CRON . Новое веб-задание появится на странице Веб-задания. Если появится сообщение о том, что веб-задание было добавлено, но вы его не видите, выберите Обновить.
Запланированное веб-задание выполняется по расписанию, определенному выражением CRON.
WebJobs — это функция Azure App Service, которая позволяет запускать программу или скрипт в том же экземпляре, что и веб-приложение. Все планы обслуживания приложений поддерживают WebJobs без дополнительной платы. В этом примере используется запланированное (активированное) веб-задание для вывода системного времени раз в минуту.
Предпосылки
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Существующее Java-приложение службы приложений.
- Плагин Maven для веб-приложений сервиса приложений Azure.
- Функция «Всегда включено » должна быть включена в приложении.
- Убедитесь, что параметр приложения
WEBSITE_SKIP_RUNNING_KUDUAGENT
установлен на значениеfalse
.
Подготовка веб-задания
Для вас создан пример Java WebJob. В этом разделе вы просмотрите пример, а затем создадите .JAR
файл с помощью Maven.
Ознакомьтесь с образцом
Java-проект, расположенный по адресу project/src/main/java/webjob/HelloWorld.java
, выводит сообщение и текущее время на консоль.
import java.time.LocalDateTime;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("------------------------------------------------------------");
System.out.println("Hello World from WebJob: " + LocalDateTime.now());
System.out.println("------------------------------------------------------------");
}
}
Сборка веб-задания Java
Скрипт
run.sh
запускает jar-файл с именем, заданным в конфигурации Maven. Этот скрипт будет запущен при запуске нашего веб-задания.java -jar webjob-artifact-1.0.0.jar
Далее мы компилируем Java-проект для создания исполняемого файла
.jar
. Есть несколько способов сделать это, но в этом примере мы будем использовать Maven. В каталогеproject/
выполните следующие команды:mvn install mvn package
Jar-файлы будут расположены по адресу
project/target/webjob-artifact-1.0.0.jar
после успешной сборки.Переместите jar-файл в корень репозитория git с помощью
mv project/target/webjob-artifact-1.0.0.jar .
кнопки Далее вы упакуете наше приложение в виде.zip
файла.zip webjob.zip run.sh webjob-artifact-1.0.0.jar
Создание запланированного веб-задания в Azure
На портале Azure перейдите на страницу Служба приложений приложения службы приложений.
В левой области выберите веб-задания, а затем нажмите кнопку "Добавить".
Введите параметры добавления веб-заданий , указанные в таблице, а затем нажмите кнопку "Создать веб-задание". В поле Загрузка файла обязательно выберите .zip файл, загруженный ранее в разделе Загрузка примера веб-задания .
Настройки ценность Описание Имя веб-задача Имя WebJob. Должен начинаться с буквы или числа и не должен содержать специальные символы, отличные от "-" и "_". Отправка файлов webjob.zip Файл .zip , содержащий исполняемый файл или файл скрипта. Поддерживаемые типы файлов перечислены в разделе поддерживаемых типов файлов . Тип Активировано Указывает, когда выполняется веб-задание: непрерывное или триггерное. Триггеры Запланировано Запланированные или ручные. Убедитесь, что функция «Всегда включена» активирована для надежной работы расписания. Выражение CRON 0 0/1 * * * * Для этого быстрого начала мы используем ежеминутное расписание. Дополнительные сведения о синтаксисе см. в разделе Выражения CRON . Новое веб-задание появится на странице Веб-задания. Если появится сообщение о том, что веб-задание было добавлено, но вы его не видите, выберите Обновить.
Запланированное веб-задание выполняется по расписанию, определенному выражением CRON.
WebJobs — это функция Azure App Service, которая позволяет запускать программу или скрипт в том же экземпляре, что и веб-приложение. Все планы обслуживания приложений поддерживают WebJobs без дополнительной платы. В этом примере используется запланированное (активированное) веб-задание для вывода системного времени раз в минуту.
Предпосылки
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Существующее приложение PHP службы приложений в Linux. В этом быстром старте используется приложение PHP.
- Функция «Всегда включено » должна быть включена в приложении.
- Убедитесь, что параметр приложения
WEBSITE_SKIP_RUNNING_KUDUAGENT
установлен на значениеfalse
.
Скачать пример веб-задания
Вы можете скачать готовый пример проекта , чтобы быстро приступить к работе. Пример включает два файла: webjob.php
и run.sh
.
PHP-скрипт webjob.php
выводит текущее время в консоль, как показано ниже:
<?php
// Get the current time
$current_time = date("Y-m-d H:i:s");
// Display the current time
echo "The current time is: " . $current_time;
?>
Файл run.sh
, вызывает webjob.php, как показано ниже:
#!/bin/bash
php -f webjob.php
Создание запланированного веб-задания
На портале Azure перейдите на страницу Служба приложений приложения службы приложений.
В левой области выберите веб-задания, а затем нажмите кнопку "Добавить".
Введите параметры добавления веб-заданий , указанные в таблице, а затем нажмите кнопку "Создать веб-задание". В поле Загрузка файла обязательно выберите .zip файл, загруженный ранее в разделе Загрузка примера веб-задания .
Настройки ценность Описание Имя веб-задача Имя WebJob. Должен начинаться с буквы или числа и не должен содержать специальные символы, отличные от "-" и "_". Отправка файлов App-Service-PHP-WebJobs-Quickstart-Main.zip Файл .zip , содержащий исполняемый файл или файл скрипта. Поддерживаемые типы файлов перечислены в разделе поддерживаемых типов файлов . Тип Активировано Указывает, когда выполняется веб-задание: непрерывное или триггерное. Триггеры Запланировано Запланированные или ручные. Убедитесь, что функция «Всегда включена» активирована для надежной работы расписания. Выражение CRON 0 0/1 * * * * Для этого быстрого начала мы используем ежеминутное расписание. Дополнительные сведения о синтаксисе см. в разделе Выражения CRON . Новое веб-задание появится на странице Веб-задания. Если появится сообщение о том, что веб-задание было добавлено, но вы его не видите, выберите Обновить.
Запланированное веб-задание выполняется по расписанию, определенному выражением CRON.
Замечание
Часовой пояс по умолчанию, используемый для запуска выражений CRON, — Всемирное координированное время (UTC). Если нужно использовать выражение CRON в соответствии с другим часовым поясом, создайте для вашего приложения-функции настройку приложения с именем WEBSITE_TIME_ZONE. Чтобы узнать больше, см. сведения о часовых поясах NCRONTAB.
Просмотр журналов WebJob
Выберите журнал для веб-задания, созданного ранее.
Результат должен выглядеть следующим образом.
Очистка
Чтобы удалить веб-задание, выберите веб-задание на портале и выберите Delete
.
Следующий шаг
Изучите более сложные сценарии WebJob, включая триггеры и варианты развертывания