2009-03-25 3 views
2

Я запустил сегодня сайт, который активно использует Starling и Workling для обработки очереди фоновых задач.Старлинг: Как ускорить очередь

Трафик был тяжелым, и хотя мой серверный процессор/память не подвергался слишком сильным нагрузкам, очередь на работу серьезно подкрепляется.

У меня нет опыта работы с Starling и Workling и срочно нужно понять, как я могу ускорить работу очереди.

Возможно, это довольно простая проблема с конфигурацией, но все предложения и мысли будут очень оценены.

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.

ответ

0

Если у вас есть доступ к другому серверу, вы можете разделить задачи между серверами. Вы, наверное, видели это, но Railscasts имеет довольно хороший introduction to Starling and Workling.

Существует также книга, которую вы можете посмотреть на книги Google с более продвинутой информации:

Practical Rails Plugins

1

Я работал, как сделать это, в конце концов, это очень просто. Просто запустите больше рабочих процессов из командной строки - может быть столько запусков, сколько есть память. Они все подберут задания из одного или нескольких экземпляров Starling, как указано в workling.yml. Обратите внимание, что :multiple должно быть => true в script/workling_client, чтобы это сработало.

+0

Может показаться глупым, но приятно проверить, работают ли вы с помощью Workling :: Remote :: Invokers :: ThreadedPoller. Таким образом, каждый из ваших рабочих будет иметь свою собственную нить внутри процесса обработки. – lsdr