ERR достигнуто максимальное количество клиентов (Redis/Puma/Sidkick/Heroku)

Я прочитал следующий пост:

Настройка Sidekiq: concurrency на Heroku Как настроить соединения Redis с Rails 4, Puma и Sidekiq?

Однако я до сих пор не могу решить следующее...

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

Я использую worker sidekick/redis для отправки почты по формам регистрации/сброса пароля/свяжитесь с нами, а также для отправки журналов в Sentry (регистрация ошибок).

Исключение

Redis::CommandError: ERR достигнуто максимальное количество клиентов ' redis (4.2.2) lib/redis/client.rb:381:in `ensure_connected' ... (29 дополнительных кадров не отображались)

Сообщение

ERR достигнуто максимальное количество клиентов

Я использую Heroku, и мой Redis допускает 30 подключений, моя база данных имеет ограничение на количество подключений 20. У меня есть один веб-дино и один рабочий дино.

Мои производственные и промежуточные развертывания имеют отдельные базы данных/redis.

приятель.yml

production:
  :concurrency: 17
staging:
  :concurrency: 10

пума.rb

workers Integer(ENV['WEB_CONCURRENCY'] || 2)
max_threads_count = Integer(ENV['RAILS_MAX_THREADS'] || 5)
min_threads_count =  Integer(ENV['RAILS_MIN_THREADS'] || max_threads_count)
threads min_threads_count, max_threads_count

preload_app!
port        ENV['PORT']     || 3000
environment ENV['RACK_ENV'] || 'development'
pidfile ENV.fetch("PIDFILE") { "tmp/pids/server.pid" }

before_fork do
  puts "Puma master process about to fork. Closing existing Active record connections."
  ActiveRecord::Base.connection.disconnect!
end

on_worker_boot do
  ActiveRecord::Base.establish_connection
end

plugin :tmp_restart

сентриджоб.рб

class SentryJob < ApplicationJob
  queue_as :default

  def perform(event)
    Raven.send_event(event)
  end
end

база данных.yml

default: &default
  adapter: postgresql
  encoding: unicode
  pool: <%= ENV["DB_POOL"] || ENV['RAILS_MAX_THREADS'] || 5 %>

person user2012677    schedule 20.05.2021    source источник