Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
EF StartUp Manager - программа для слежением за программами, которые запускаются вместе с загрузкой операционной системы...
EF Mailbox Manager - программа для периодической проверки неограниченного количество аккаунтов электронной почты. Вы мож...
Программа позволяет узнать, чем занято место на жестком диске. Сканирует папки очень быстро и выводит наглядную диаграмм...
HashMyFiles - это маленькая утилита, которая предоставляет возможность рассчета контрольных сумм MD5 и SHA1 для одного и...
Файловый менеджер с очень малыми системными требованиями, но тем не менее с большими возможностями. Программа имеет ориг...
OSzone.net Microsoft Разработка приложений Облако/Azure Развертывание Microsoft Azure WebJobs RSS

Развертывание Microsoft Azure WebJobs

Текущий рейтинг: 0 (проголосовало 0)
 Посетителей: 389 | Просмотров: 448 (сегодня 0)  Шрифт: - +

Microsoft Azure WebJobs — это новая функция Microsoft Azure Web Sites, подробнее о ней вы можете прочитать тут.

Несмотря на то, что вы можете легко добавить новую WebJob используя портал управления Microsoft Azure, вы, возможно, захотите развертывать WebJob другими способами — ftp/git/WebDeploy. В этом посте я покажу, как WebJob хранятся в вашем Azure WebSites и как вы можете развернуть новую WebJob.

Где хранятся WebJobs?

WebJobs сохраняются в следующей директории вашего сайта:

site\wwwroot\App_Data\jobs\{job type}\{job name}


Где {job type} может быть либо continuous для постоянно запущенных WebJob, либо triggeredдля тех, которые стартуют по триггеру (по требованию или расписанию).
{job name} — это имя вашей WebJobs

Таким образом, постоянно работающая WebJob с именем myjob будет располагаться в

site\wwwroot\App_Data\jobs\continuous\myjob

Что должно быть внутри директории с WebJob?

Директория с WebJob может содержать от одного до стольких файлов, сколько вам требуется, но по меньшей мере должна содержать скрипт, стартующий процесс WebJob. На текущий момент это может быть:

  1. Командный файл (.exe/.cmd/.bat)
  2. Bash (.sh)
  3. JavaScript (.js для node.js)
  4. PHP (.php)
  5. Python (.py)

Скрипты запускаются автоматически по следующей логике:

  1. Сначала ищется файл с именем run.{поддерживаемое расширение} (побеждает первый найденный)
  2. Если он не найден, ищется любой файл с поддерживаемым расширением
  3. Если не найден и он — это не запускаемая WebJob


Примечание: если у вас есть какой-то другой движок исполнения скриптов, который вы хотите использовать
и который не поддерживается на данный момент, вы всегда можете создать файл run.cmd и написать там команду для выполнения (например, powershell -Command run.ps)

Развертывание WebJob

Итак, благодаря этой информацией вы знаете, как создать постоянно работающую WebJob с названием myjob, и все что остается сделать — поместить бинарные файлы в нужную директорию.

Один из способов это сделать — соединиться с вашим сайтом через FTP, создать директорию с правильным именем и скопировать туда бинарные файлы (содержащие хотя бы один поддерживаемый скриптовый файл). Тогда WebJob будет определена автоматически и немедленно начнет выполняться.

Развертывание WebSite+WebJobs

Для развертывания сайта с WebJobs все, что вам нужно сделать — убедится, что вы разворачиваете вашу WebJob в верное место. Для примера, взгляните на следующую структуру сайта на node.js с WebJob:

./server.js
./App_Data/jobs/continuous/myjob/run.cmd


Пока проект содержит эти два файла — это веб-сайт с постоянно запущенной WebJob, и вы можете использовать любой инструмент для развертывания, который вы предпочитаете — ftp/WebDeploy/git/…

Обновление развёртывания

Постоянно запущенные WebJob (continuous) — после того, как вы развернете новую WebJob на месте старой, текущий запущенный процесс будет прерван и перезапущен с новыми бинарными файлами.
triggered — обновление развертывания не затрагивает текущую запущенную WebJob, но следующий запуск произойдет уже с новыми файлами

Примечание: Перед тем, как WebJob запускается, её бинарные файлы копируются во временную директорию, поэтому вы всегда можете безопасно обновлять развернутую WebJob, не опасаясь блокировки файлов.

Предостережение касательно Triggered WebJob

Одна проблема, с который мы сталкиваемся при развертывании triggered WebJob этим способом, заключается в том, что, фактически, это получается WebJob, запускаемая по требованию, и вам требуется нажать кнопку RUN ONCE в портале управления, чтобы запустить её. На данный момент нет простого способа добавить расписание для неё.

Обходным путем может быть создание пустого запланированного WebJob с необходимым именем и тогда развертывание заменит файлы, но сохранит текущее расписание.

Автор: Алексей Романов  •  Иcточник: MSDN  •  Опубликована: 03.10.2014
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER
Теги:   Microsoft Azure WebJobs.


Оценить статью:
Вверх
Комментарии посетителей RSS

Чтобы оставить комментарий, зарегистрируйтесь или войдите с учетной записью социальной сети.