2009-12-19 3 views
3

Я новичок в Gearman. У меня есть следующие вопросы об оптимизации использования Gearman:Задачи архитектуры Gearman

1) Я думаю, что работник ожидает работу как «строка». Могу ли я отправить Массив или Хеш как Работу работнику? Если нет, является ли JSON лучшим форматом работы для отправки Array/Hash?

2) Могу ли я подключить маршруты приложений рельсов в качестве рабочего для Job Server?

3) Как вы проверяете, работает ли рабочий или нет? Есть ли какой-либо инструмент администрирования для статистики Job Server и Worker?

4) Могу ли я создать систему ROR, чтобы каждый запрос проходил через сервер задания Gearman? У меня есть несколько приложений, использующих одну и ту же базу данных (некоторые из них - приложение для iPhone, приложение для Android, веб-сайт). Моя основная цель - доступ к контенту с использованием общего API для всех этих приложений. Или Gearman больше подходит для фоновых процессов?

Спасибо.

ответ

1

Не могу сказать, что я знаю что-нибудь о механике, но я думаю, что могу ответить на первый вопрос.

Если вы хотите передать объекты другим методам, вам необходимо последовательно его сериализовать (это почти всегда выполняется при передаче объекта другому процессу). «Лучший» способ сделать это во многом зависит от того, что вы хотите отправить. JSON - это один из способов, и, вероятно, это один из самых маленьких, когда дело касается размера передачи. Итак, да, вы можете использовать JSON для передачи хэшей и массивов.

2

Могу ли я отправить массив или хэш, как Иова работника? Если нет, является ли JSON лучшим форматом работы для отправки Array/Hash?

Любой тип струн будет делать; однако JSON великолепна, поскольку его можно легко декодировать и использовать для гидратации модели/объекта.

Могу ли я подключить маршруты приложений рельсов в качестве рабочего для Job Server?

Я вообще предпочитаю писать автономные приложения/сценарии в качестве рабочих. Ruby будет здорово для этого. Вы можете даже написать их как скрипты Тор.

Есть ли средство администрирования для работы сервера и статистики Worker?

Если вы знакомы с оболочкой, это может работать для вас: Any way to access Gearman administration?

Или Gearman больше подходит для фоновых процессов?

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

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