Ограничит ли количество подключений в Redis количество заданий, которые я могу выполнять в фоновом режиме? - PullRequest
0 голосов
/ 21 декабря 2018

В настоящее время я использую Sidekiq (бесплатно) и Heroku Redis (бесплатно) в моем приложении Rails.Я заметил, что Heroku Redis говорит, что он имеет ограничение на соединение 20.

Это повлияет / ограничит количество фоновых заданий, которые я могу выполнить с Sidekiq?

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

def send_notification
    users = User.all

    users.each do |user|
        EditionMailer.with(edition: @edition, user: user).notification_email.deliver_later
    end

    redirect_to edition_path(@edition)
end

В настоящее время у меня есть 63 пользователя в приложении, поэтому будет отправлено 63 письма.Тем не менее, я ожидаю, что больше будет добавлено позже.

Заранее спасибо.

1 Ответ

0 голосов
/ 21 декабря 2018

Для работы sidekiq вам необходимо соединение со стороны веб-сервера (он же клиент) и соединение со стороны sidekiq worker (он же сервер / работник), все это объединено в пул.

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

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

Для конфигурации sidekiq вы можете использовать калькулятор Мануэля ван Рейна

...