2016-03-15 5 views
0

Я хочу запускать сторонних рабочих на разных серверах, чтобы разделить нагрузку. Не удалось найти документацию. Я не мог найти ничего в официальной документации sidekiq, и я попытался в google искать «sidekiq remote server», «sidekiq remote workers» ..., но не смог найти ничего полезного. Вот что я пытаюсь, чтобы enter image description hereНастройка удаленного сервера Sidekiq

Мои вопросы: Мне нужно повторить тот же код приложения, как на производственном сервере для всех подельников серверов делать? Как настроить sidekiq для работы таким образом или какую документацию или источники прочитать об этом типе конфигурации? Спасибо всем за любую помощь!

ответ

2

Q1. Нужно ли мне копировать тот же код приложения, что и на производственном сервере, на все серверы sidekicks?
Ответ: Да

Q2. Как настроить Sidekiq для работы таким образом или документацию или источники для чтения об этом типе конфигурации?
Ответ: Вам необходимо подключить Sidekiq к общему серверу Redis. Подумайте о том, что ваши работники Sidekiq подключены к серверу Redis на сервере, скажем R. Затем, когда вы запускаете какое-либо задание, вам необходимо настроить свой бокс Sidekiq для подключения к Redis на сервере R.

Чтобы настроить Sidekeq для использования внешних сервер можно использовать

Sidekiq.configure_server do |config| 
    config.redis = { url: 'redis://redis.example.com:7372/12' } 
end 

вы можете проверить documentation даже для получения дополнительной информации.

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

+0

В этом случае вы не сталкиваетесь с каким-либо дублированием работы, так как все процессы sidekiq пытаются читать и записывать в тот же БД. – Sai

+1

@Sai No. Операции, выполняемые на Redis, являются атомарными. –

1

Первый вопрос - Sidekiq требует, чтобы код приложения выполнял свою работу, поэтому вам нужно убедиться, что он реплицируется на каждый сервер задач.

Configuring the Sidekiq is pretty simple, но настройка этих серверов будет немного более сложной. Лично мне нравится Amazon's Opsworks для такого типа стека, и я использую this Chef recipe для настройки каждой машины, на которой работает Sidekiq. (Я использую Monit для его работы, поэтому я назвал это как рецепт Monit.)

Если вы можете предоставить более подробную информацию о предпочтительных вариантах размещения и размещения хостинга, мы можем, возможно, дать вам более подробные ответы , Удачи. :)

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