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


Новые программы oszone.net Читать ленту новостей RSS
Скретч—это визуальная объектно-ориентированная среда программирования для обучения школьников младших и средних классов....
Vivaldi — это гибкий, настраиваемый браузер, для которого «пользователь на первом месте», утверждают создатели, во главе...
Registry First Aid - программа для очистки системного реестра операционной системы и, как следствие, оптимизации работы ...
Многофункциональная утилита для работы с CD-ROM - позволяет читать нечитаемые диски и тестировать CD на ошибки, создават...
Программа для создания красивых текстовых эффектов и титров, применяемых при DVD-авторинге, а также трехмерной мультипли...
OSzone.net Microsoft Разработка приложений Облако/Azure Развертывание Microsoft Azure WebJobs RSS

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

Текущий рейтинг: 0 (проголосовало 0)
 Посетителей: 399 | Просмотров: 459 (сегодня 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.


Оценить статью:
Вверх
Комментарии посетителей
Комментарии отключены. С вопросами по статьям обращайтесь в форум.