В чем разница между веб-заданиями Azure и планировщиком Azure в Microsoft Azure?

Кто-нибудь может объяснить разницу между веб-заданиями Azure и планировщиком Azure?


person Ondipuli    schedule 25.06.2014    source источник


Ответы (2)


Веб-задания Azure

  1. Доступно только на веб-сайтах Azure.
  2. Он используется для запуска кода через определенные промежутки времени. Например. консольное приложение каждый день
  3. Используется для запуска и запуска рабочих нагрузок.
  4. В основном рекомендуется для рабочих нагрузок, которые либо масштабируются вместе с веб-сайтом, либо являются относительно небольшими.
  5. Может работать постоянно, если выбрано «Всегда включено», в противном случае вы получите 20-минутный тайм-аут.
  6. Код, который необходимо запустить, и расписание определяются вместе.

Планировщик Azure

  1. Не привязан к веб-сайтам или облачным сервисам
  2. Позволяет вызвать веб-сайт или добавить сообщение в очередь хранения.
  3. Используется для запуска событий или запуска небольших рабочих нагрузок (например, добавление в очередь), обычно для запуска более крупных рабочих нагрузок.
  4. В основном рекомендуется для запуска более сложных рабочих нагрузок.
  5. Это всего лишь триггер, и отдельная функция прослушивания событий триггера (например, очереди) должна быть закодирована отдельно.

Для многих экземпляров я предпочитаю использовать планировщик для отправки в очередь хранилища, а рабочая роль в каждом экземпляре удаляется из очереди. Это обеспечивает детальный контроль задач, а также может перемещаться вверх или вниз по шкале за пределами вашего веб-сайта.

С веб-заданиями они масштабируются вверх и вниз вместе с вашим сайтом, и, следовательно, ваши фоновые задачи могут стать чрезмерно облагаемыми налогом, если ваш сайт испытывает низкий трафик и масштабируется.

person Adam    schedule 25.06.2014
comment
Веб-задания могут постоянно выполняться и управляться очередями, а также выполняться через определенные промежутки времени. - person Mark Rendle; 25.06.2014
comment
Это не суммирует различия, а только обеспечивает минимальные варианты использования. - person Amit Apple; 26.06.2014
comment
@Amit - я обновил ответ, включив в него дополнительную информацию. В нем перечислены в основном функции, а не варианты использования. Варианты использования приведены для нескольких примеров, я не могу перечислить сотни вариантов использования, применимых для планировщика и веб-заданий. - person Adam; 27.06.2014

Azure Scheduler – позволяет легко планировать HTTP-вызовы по четко определенному расписанию, например, каждый час, каждую пятницу в 9:00, один раз в день, ...

Azure WebJobs. Позволяет выполнять небольшие и средние рабочие нагрузки (в форме сценария: .exe, .cmd, .sh, .js, ...) в том же контексте, что и Веб-сайт Azure (но может быть размещен даже при пустом веб-сайте).

В то время как веб-задание может выполняться непрерывно (с процессом, имеющим цикл while), Azure будет следить за тем, чтобы это веб-задание всегда выполнялось (с установленным параметром «Всегда включено»).

Существует также интеграция между планировщиком Azure и веб-заданиями Azure, где у вас есть веб-задание, которое выполняет некоторую конечную работу, а планировщик отвечает за планирование этой работы (вызов веб-задания).

Таким образом, планировщик предназначен для планирования работы, а веб-задания — для выполнения рабочей нагрузки.

person Amit Apple    schedule 26.06.2014