Форк отложил работу с сервера приложений? - PullRequest
0 голосов
/ 20 января 2010

Вот мой простой идеальный сценарий, когда я хотел бы запустить отложенное задание:

  • Когда запускается первый сервер приложений (будь то через монгрела или пассажира), он запускает мои рабочие с задержкой.
  • Когда последний запущенный сервер приложений завершает работу, он убивает всех задержанных рабочих.

Первая часть (стартовая) выполнима, хотя я не уверен, что это «правильный» или «лучший» способ сделать это. Просто сделать условный (для процесса, который еще не запущен) системный вызов для запуска delayed_job?

Вторая часть (окончание) - ну, я не уверен, выполнимо это или нет. Определенно понятия не имею, как этот эффект может быть достигнут.

Есть мысли или идеи?

Есть ли другой способ, с помощью которого вы начинаете / заканчиваете работников с задержкой на работу, которые вы считаете наиболее подходящими?

Дополнительный вопрос: Основные вопросы, приведенные выше, касаются производственной среды - более сложный случай, поскольку одновременно работают несколько серверов приложений. Можно ли легко сделать то же самое в среде разработки (где гарантированно будет только один сервер приложений, а не их кластер), разветвив дочерний процесс для запуска рабочих с отложенными заданиями, которые всегда завершаются при завершении родительского процесса? Как бы я поступил так?

1 Ответ

1 голос
/ 20 января 2010

Вы можете определенно завершить завершение с помощью бога .

Просто наблюдайте за процессами приложения, и Бог сработает с обратным вызовом, когда они все остановятся.

...