powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как возобновить работу job-а ?
12 сообщений из 12, страница 1 из 1
Как возобновить работу job-а ?
    #37931204
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть job, который запускается на сервере раз в 5 минут.
Все бы ничего, но стабильно раз-два в сутки он падает (как правило ночью).
Как сделать так, чтобы автоматически возобновлять job после очередного "падения" ? (возможно кто-то сталкивался)


-----------------------------------------------
А мы тут плюшками балуемся...

Аленочка тм
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37931232
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно запустить процесс который работает паралелльно и он более стабилен, и он проверяет состояние процесса
сделать это просто $d(^$j(job)) скажет работает процесс или нет, если же нет можно запустить снова

думаю это единственный способ
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37931374
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему падает? надо бы разобраться.
А вообще, DAiMor прав, только я бы через блокировки делал.
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37931383
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно ещё запланировать задачу в Менеджере задач с запуском каждые 5 минут.
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37933601
kalin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Linux решается просто

Создаем скрипт типа

#!/bin/sh
csession cache -U "область" ^моя программа

В cron прописываем его запуск

Поменьше доверяйте Cache различные системные вещи. Прикручивайте к нему системные "костыли" операционной системы.
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37936504
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey MaslovМожно ещё запланировать задачу в Менеджере задач с запуском каждые 5 минут.
хм :-) она так и запланирована, именно через Менеджер задач
просто начиная с 5.1 версии "If a running task encounters any kind of error, it is suspended"
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37936642
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аленочка,

так ведь в истории задач пишется, почему задача заблокировалась. Если этого мало, можно собрать информацию об ошибке своим перехватчиком, вызывая из него BACK^%ETN.

Конечно, можно написать задачу-"супервизор", которая будет автоматически разблокировать вашу задачу, но так вы никогда не решите проблему.
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37936702
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если процесс не завершается не неожиданно, и можно попробовать отловить ошибку, то нужно бы обвешать его отловами ошибок и завершать процесс корректно, зачиащая стек ошибок, ну и разумеется их залогировать.
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37937184
Фотография kolesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMor,

Вот этим вы, работяги, от нас - ленивых, и отличаетесь...
Я бы не отлавливал ошибку (вот еще время и калории тратить), а просто вместо запуска некой task в менеджере задач запустил бы к.л. taskrunner, из которого бы уже JOBом запускал нужный мне task и неважно, как он там завершился... ну раз в сутки будет глючить. На сотни запусков один сбой - вообще не проблема.
Думаю, что это - самый дешевый и низкокалорийный способ решить проблему.
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37937252
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolesov,

Ну с ошибками как то некомфортно, тем более иногда бывают задачи когда наличие ошибок может быть критичной проблемой.
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37940792
D_De1mos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У нас все системные задачи из менеджера внутри обернуты в try{}catch{} и по завершении, есть ошибки или нет возвращают $$$OK, а в случае ошибки пишут в лог, из которого и узнаем что за ошибка
...
Рейтинг: 0 / 0
Как возобновить работу job-а ?
    #37941252
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D_De1mos,

интересная идея. Но у менеджера задач есть полезная возможность: уведомлять по почте об успешном (и не очень) завершении задачи. Вы наверное ею просто не пользуетесь? т.к. в вашем случае тексты сообщений в обоих случаях будут неотличимы.

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

Мне приходилось в разных ситуациях использовать и менеджер Cache, и crond (Linux), и at (Windows). К менеджеру Cache нет претензий по надежности (он существует уже почти 10 лет), и у него есть дополнительная возможность, которая отсутствует у других планировщиков: запуск задачи (e.g. 1001) по условию завершения некоторой другой задачи (e.g. 1000). Таким образом, задачи можно связать в цепочку, что бывает удобно. Жаль, что запуск задачи 1001 возможен только в случае успеха задачи 1000, в случае ошибки ничего запущено не будет.

Да и настройка "блокировать ли задачу в случае ошибки" не помешала бы.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как возобновить работу job-а ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]