Надежность запланированных задач ColdFusion? - PullRequest
3 голосов
/ 03 июля 2011

Теперь это может быть очень неопределенный вопрос, но насколько надежны запланированные задачи?Например, если я настрою задачу делать что-то ежедневно в 3 часа дня и при условии, что в коде нет ошибок, будет ли ColdFusion всегда проверять, чтобы она работала каждый день в 3 часа дня?

Ответы [ 5 ]

4 голосов
/ 04 июля 2011

Я скажу ДА, он будет запускаться каждый 15:00, если это расписание, а ваш сервер COLDFUSION работает (очень важно;)).Я использую это много.Почти 25 графиков в одном из моих проектов для создания ежедневного отчета и статистики по электронной почте.На страницах расписания убедитесь, что время ожидания вашей страницы не истекло, так как эта ошибка не будет обнаружена методом ColdFusion onError, если вы регистрируете / отправляете письмо по ошибке, либо никогда не узнаете, что скрипт не был запущен должным образом.

4 голосов
/ 03 июля 2011

Раньше мы использовали запланированные задания для запуска вещей еженедельно, ежедневно, ежечасно, ежеминутно и посекундно.За менее чем минуту нам потребовалось взломать файл neo-cron.xml, и в целом он работал очень хорошо до ColdFusion 9.0.1 - см. Здесь - и затем мы должны были выполнить задачикоторый запускался чаще, чем раз в минуту, другому планировщику.

Мы выбрали VisualCron и не оглядывались назад.В отличие от планирования CF, VisualCron позволяет нам запускать задачи командной строки, а не только нажимать на URL, который иногда может быть ненужным.

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

Надеюсь, это поможет!

1 голос
/ 03 июля 2011

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

1 голос
/ 03 июля 2011

Из моего опыта они очень надежны.Мы используем их для многих автоматизированных задач, которые выполняются ежедневно и еженедельно.Никогда не подводите нас.

В качестве проверки добавьте электронное письмо в программы, чтобы, если вы получаете ежедневное электронное письмо, вы знали, что запланированное задание выполнено.Если не что-то пошло не так, но если ваш веб-сервер или Coldfusion не остановились, то после его полной настройки все должно быть гладко.

0 голосов
/ 22 марта 2013

По моему опыту, они чрезвычайно надежны.

Как узнать, выполнялась ли задача:

Для сервера Railo, один способ проверить, была ли запущена задачаили получить представление о статусе задачи можно в проверке «scheduler.log».Обычно это находится в каталоге / WEB-INF / railo / logs.Здесь вы можете увидеть, была ли выполнена задача или нет, истекло ли время ожидания и т. Д.

Для сервера CF вы можете установить массив запланированных задач, создав объект, как показано ниже, а затем просто выполнить цикл или cfdump.это:

<cfset arySchedTasks = createobject("java","coldfusion.server.ServiceFactory").getCronService().listall() />
...