2010-07-11 3 views
8

Сейчас я пытаюсь delayed_job, и у вас есть вопросы.Некоторые основные вопросы о 'delayed_job'

С http://github.com/collectiveidea/delayed_job страницы, я могу видеть некоторую информацию:

Рабочие могут быть запущены на любом компьютере , до тех пор, как они имеют доступ к базе данных и их синхронизации в синхронизации. Имейте в виду, что каждый рабочий будет проверять базу данных, по крайней мере, каждые 5 секунд.

  1. Когда я призываю rake jobs:work один раз, он будет создавать ONE работника, не так ли?

  2. Когда работник проверяет базу данных, он будет читать ВСЕ новых и невыполненных заданий КАЖДЫЙ РАЗ, и запустить их?

  3. это говорит работник будет проверять базу данных каждые 5 секунд, я могу сделать это 2 секунды?

  4. Когда я создаю рабочего (rake jobs:work), в базе данных уже есть 10 задач, и каждый из них займет 3 с. Сколько процессов создаст DelayedJob? И сколько секунд нужно в итоге?

ответ

13
  1. да
  2. да
  3. Delayed::Worker.sleep_delay = 2
  4. 1 работник будет работать на каждой задачи, в свою очередь, проходит или не его, прежде чем идти на следующий. 30 секунд всего +, однако длинные 9 спящих задержек относятся к общему времени (по умолчанию 45 секунд). Я не уверен, как ответить на ваш вопрос о процессах. Создается 1 работник, который является процессом. В зависимости от того, что должно выполняться задание, может быть создано ноль или несколько других процессов.
+0

@ x1a4, спасибо. И вы могли видеть мой обновленный вопрос, есть еще один вопрос :) – Freewind

+0

Есть ли все-таки ускорить? Я имею в виду, могут ли эти задачи выполняться параллельно? – Freewind

+0

Запуск нескольких сотрудников – x1a4

 Смежные вопросы

  • Нет связанных вопросов^_^