Работа большого проекта 24 на 7 в режиме нон-стоп

  • Автор темы Автор темы littleKongo
  • Дата начала Дата начала

littleKongo

Client
Регистрация
17.01.2015
Сообщения
244
Реакции
24
Баллы
18
Есть достаточно большой проект состоящий из сотни экшенов (много разных проверок наличия текста чтобы избежать ошибок несколько циклов). Сам проект в среднем отрабатывает за 10-12 минут, то есть одно выполнение занимает 10-12 минут. Сейчас стоит задача сделать так чтобы проект отрабатывал в режиме нон-стоп и 24 часа в сутки крутился. Что касается внутренней логи проекта - то все гладко и плюс я ее постоянно дорабатываю. Но заметил, что проект в таком режиме отрабатывает 3-4 часа, а потом происходят всякие неожиданности по типу: "проблемы с интернетом", какие-то проблемы на самом сайте по которому ходит проект и все в таком роде. Причем такие могут произойти в любом месте и на любом экшене

В связи с этим прошу подсказать, можно ли как-то на С-шарпе написать настройку, что если, например цикл проекта выполняется уже 20 минут, то автоматом инициируются события по BadEnd и зенопостер работает дальше

Или может такое решение: если проект завис на любом экшене более 5 минут, то автоматом инициируются события по BadEnd и зенопостер работает дальше. Такой вариант кажется самым разумным

Буду признателен за помощь. Может кто-то знает другие варианты решения такой задачи - обязательно делитесь :-)
 
Последнее редактирование:
Зачем вы его зацикливаете?
Просто запускайте с большим количеством выполнений
 
Зачем вы его зацикливаете?
Просто запускайте с большим количеством выполнений
Наверное не правильно выразился. Я и запускаю с большим количеством выполнение. Среднее время выполнения 8-12 минут. Но через 3-4 часа работы просиходит какой-то баг на любом из экшенов и я потом прихожу смотрю одно выполнение выполнялось больше 2 часов и так не выполнилось, проект повис....
 
Или может такое решение: если проект завис на любом экшене более 5 минут, то автоматом инициируются события по BadEnd и зенопостер работает дальше. Такой вариант кажется самым разумным
вообще, то что ты описал, это актуально...

по поводу экшена тайм аута, это есть: http://prntscr.com/94ib8p

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

Если лень: получите время на старте проекта в unix формате, прибавьте 20 минут (в секундах) и периодически сравнивайте это время. Если мы работаем уже более 20 минут -> завершаем.
 
вообще, то что ты описал, это актуально...

по поводу экшена тайм аута, это есть: http://prntscr.com/94ib8p

а как дела с ресурсами компа, во время этих зависонов?
С ресурсами все ок вроде. Сайт не тяжелый. "Таймайут выполнения команд в инстансе" - это то, о чем я говорил? если проект завис на любом экшене более 5 минут, то автоматом инициируются события по BadEnd и зенопостер работает дальше.
или что-то другое ?
Самый разумный вариант - понять в чем ошибка и исправить её.
Логируйте важные участники проекта, изучайте логи и смотрите в чем ошибка - где проект уходит в бесконечный цикл и из-за чего.

Если лень: получите время на старте проекта в unix формате, прибавьте 20 минут (в секундах) и периодически сравнивайте это время. Если мы работаем уже более 20 минут -> завершаем.
Спасибо. Логи веду по технологии товарища LightWood. За что ему отдельный респект
http://zennolab.com/discussion/threads/oshibki-v-shabax-naxodim-i-reshaem-ix-v-2-raza-bystree.19930/
Собственно за счет их наличия и получилось выстроить сложную логику проекта, которая отрабатывает хорошо и далее допиливается.
Но проблемы с интернетом, какие-то проблемы на самом сайте по которому ходит проект и все в таком роде, то есть те, которые могут произойти в любом месте и на любом экшене, таким образом не решишь.
 
С ресурсами все ок вроде. Сайт не тяжелый. "Таймайут выполнения команд в инстансе" - это то, о чем я говорил? если проект завис на любом экшене более 5 минут, то автоматом инициируются события по BadEnd и зенопостер работает дальше.
или что-то другое ?
не уверен на счет срабатывание badend, но в теории и по логике - должен )
это точно скажем нам rostonix
 
самой простой способ перезагружать зенку каждые 4 часа по планировщику виндовс.
Или смотри тут
http://zennolab.com/discussion/thre...nija-ili-zdravstvuj-zdorovyj-son.16934/page-2
спасибо, возьмем на вооружение, но тут проблема в рамках одного проекта, а параллельно еще выполняются проекты и сам зеннопостер работает стабильно
 
не уверен на счет срабатывание badend, но в теории и по логике - должен )
это точно скажем нам rostonix
@rostonix
подскажите так ли это, будет выход по badend, если например, "Таймайут выполнения команд в инстансе" стоит в 3 минуты и проект уже как 3 минуты завис на одном экшене?
 
И все таки опять проект подвис на полтора часа. Причина: не загрузился сайт на рандомном экшене....... Зашел в инстанс и перезагрузил сайт и проект продолжил выполнение
 
Таймайут выполнения команд в инстансе - это означает, что инстанс глухо висит и ничего не делает.
Опять же - бесконечная загрузка страницы (при подгрузке скриптов и т.д.) не считается таким висом, зависание при парсинге - так же не считается. Это воспринимается, как выполнение работы.
Смотрите свой проект, от чего он может висеть. Нужно что то оптимизировать.
 
И все таки опять проект подвис на полтора часа. Причина: не загрузился сайт на рандомном экшене....... Зашел в инстанс и перезагрузил сайт и проект продолжил выполнение
Что значит не загрузился сайт?
Подвисла загрузка - игнор get/ajax и т.д.
Пустой экран - поиск текста...
А вообще в 100500 раз прошу сделать возможность глобального таймаута выполнения :)
 
BadEnd он не для того чтобы шаблон работал дальше, он для того, чтобы сохранить данные , не потерять их , перед завершением шаблона.

Если у вас сайт спокойно продолжает работу после 1,5 часов простоя, после того как навигейт делаете, подозреваю что там в цикле попытка какого-то действия прописана?
 
BadEnd он не для того чтобы шаблон работал дальше, он для того, чтобы сохранить данные , не потерять их , перед завершением шаблона.

Если у вас сайт спокойно продолжает работу после 1,5 часов простоя, после того как навигейт делаете, подозреваю что там в цикле попытка какого-то действия прописана?
Да там есть цикл выполнения. Но не уверен, что подвис происходит именно на цикле и оно по циклу гуляет. Как узнать точно? Нажимаю "Показать" и вижу инстанс и сложно понять где сейчас выполняется проект, ходит он по циклу или как-то иначе. Сам сайт пишет такую ошибку что "Было плохое соединение с сервером, обновите пожалуйста страницу". Я если обновляю страницу вручную, то проект безо всяких ошибок продолжает выполнение.


Точно, вспомнил, на том этапе где происходил такой подвис там нет циклов
 
Делайте в разных местах шаблона оповещения, чтобы увидеть на каком этапе он висит. Т.е. Вы увидите последнее оповещение и приблизительно сможете вычислить где именно он крутится.
 
  • Оценить
Реакции: nomarketing
Делайте в разных местах шаблона оповещения, чтобы увидеть на каком этапе он висит. Т.е. Вы увидите последнее оповещение и приблизительно сможете вычислить где именно он крутится.
Такой подвис был уже 4 раза и каждый раз на новом месте (заходил в шаб и видел разные старицы), поэтому локализировать где именно это происходит не вижу смысла, так как каждый раз по-разному
и все же такой вариант можно сделать? "В связи с этим прошу подсказать, можно ли как-то на С-шарпе написать настройку, что если, например цикл проекта выполняется уже 20 минут, то автоматом инициируются события по BadEnd и зенопостер работает дальше"
 
Нет, если вы не ограничиваете цикл, программа считает что его не нужно ограничивать
 
Нет, если вы не ограничиваете цикл, программа считает что его не нужно ограничивать
опять не правильно выразился, можно написать чтобы не цикл, а одно выполнение если уже осуществляется больше 20 минут, то автоматом инициируются события по BadEnd и зенопостер работает дальше
 
Вы бы уже шаблон свой дали кому то, если там нету ничего секретного, чтобы на него посмотрели и помогли Вам разобраться, т.к. проблемы явно в шаблоне и эти моменты, о которых Вы пишите скорее всего можно избежать правильно настроив шаблон.
 
Делайте в разных местах шаблона оповещения, чтобы увидеть на каком этапе он висит. Т.е. Вы увидите последнее оповещение и приблизительно сможете вычислить где именно он крутится.
опять не правильно выразился, можно написать чтобы не цикл, а одно выполнение если уже осуществляется больше 20 минут, то автоматом инициируются события по BadEnd и зенопостер работает дальше
Поищи где то была статья, как находить ошибки в проэктах там даже скришоты будут.
Точно не помню но вроде полезнае вещи там писались по дебагу
 
Под циклами я имею ввиду не общее зацикливание шаблона целиком, а вообще любые циклы, если у вас там, например, попытки какого-то действия настроены так, что при успехе-неуспехе, всегда из экшена идет возвращение в одну точку и потом снова попадает на этот экшен. Такую логику нужно менять и циклы такие ограничивать
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)