Непрерывный WebJob автоматически останавливается

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

Мой сайт находится в режиме совместного доступа и практически не имеет трафика в настоящий момент, поэтому я установил фиктивную службу, которая каждые 1 минуту запрашивает домашнюю страницу, чтобы веб-сайт не закрывался как часть этого тестирования, и что швов работать должным образом, и я могу заметить, что сам сайт не отключается. однако этот веб-сайт продолжает закрываться примерно за час, если я не перейду на портал Azure Management и не посмотрю статус webjob. Момент Я туда иду, он снова запускается, а затем выключается через несколько минут до часа.

файл журнала для этого веб-сайта показывает примерно следующее:

[02/13/2015 09:19:45 > 4660f6: INFO] Job host started
[02/13/2015 10:19:41 > 4660f6: SYS INFO] WebJob is still running
[02/13/2015 10:20:35 > 4660f6: SYS INFO] WebJob is stopping due to website shutting down
[02/13/2015 10:20:35 > 4660f6: SYS INFO] Status changed to Stopping
[02/13/2015 10:20:35 > 4660f6: INFO] Job host stopped
[02/13/2015 10:20:35 > 4660f6: SYS INFO] Status changed to Success
[02/13/2015 10:20:35 > 4660f6: SYS INFO] Status changed to Stopped

Я вижу, что мой сайт все еще работает и возвращает мне домашнюю страницу, но сама работа останавливается.

теперь, когда я вхожу на портал управления для поиска статуса, я вижу это в журналах:

[02/13/2015 10:20:35 > 4660f6: SYS INFO] Status changed to Success
[02/13/2015 10:20:35 > 4660f6: SYS INFO] Status changed to Stopped
[02/13/2015 14:56:15 > 4660f6: SYS INFO] Status changed to Starting
[02/13/2015 14:56:17 > 4660f6: SYS INFO] Run script 'WebJobs.exe' with script host - 'WindowsScriptHost'
[02/13/2015 14:56:17 > 4660f6: SYS INFO] Status changed to Running
[02/13/2015 14:56:19 > 4660f6: INFO] Found the following functions:
[02/13/2015 14:56:19 > 4660f6: INFO] WebJobs.NotificationsProgram.ProcessQueueMessage
[02/13/2015 14:56:19 > 4660f6: INFO] WebJobs.NotificationsProgram.PublishNotification
[02/13/2015 14:56:19 > 4660f6: INFO] WebJobs.NotificationsProgram.ProcessMessages
[02/13/2015 14:56:19 > 4660f6: INFO] Job host started

Любые идеи относительно того, как я могу убедиться, что Webjob активен, пока активен веб-сайт? или, по крайней мере, сделать так, чтобы веб-сайт начал работу с веб-сайтом, когда он вернулся в рабочее состояние.

ОБНОВЛЕНИЕ 1

Мой webjob сам очень простой, как показано ниже:

static void Main(string[] args)
{
    JobHost host = new JobHost();
    host.RunAndBlock();
}

и триггерные функции выглядят примерно так:

public static void WriteLogPOCO([QueueTrigger("logqueue")] BlobInformation blobInfo, TextWriter logger)
{
    logger.WriteLine("Queue message refers to blob: " + blobInfo.BlobName);
}

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

ОБНОВЛЕНИЕ 2

Я попытался посмотреть Process Explorer, и я вижу одну из трех вещей, когда WebJobs остановлены. Я не знаю, как просматривать журналы заданий, не переходя на портал управления, поэтому не знаю фактических журналов в этот момент времени.

Sometimes thisSometimes I see thisenter image description here

Но я уверен, что Job не работает, поскольку он не обрабатывает никаких сообщений из очереди, пока я не перейду на портал управления.

результат pingdom, как показано ниже, который показывает, что сам сайт работает без перерыва: Ping Dom Result

Отношения Киран

Ответ 1

Такое поведение ожидается, если вы собираетесь работать в общем режиме, как есть. Рекомендуется включить Всегда вкл., если у вас постоянно работает webjob. Тем не менее, это функция Basic и Standard, поэтому вам нужно будет изменить свой режим или переосмыслить свое решение.

Также обратите внимание на эти примечания, сделанные эту ссылку.

enter image description here

enter image description here

Ответ 2

Веб-сайт останавливается, потому что веб-сайт отключается. В журнале у вас есть следующая строка:

[02/13/2015 10:20:35 > 4660f6: SYS INFO] WebJob is stopping due to website shutting down