Я хочу использовать Action Cable и Redis на многопоточном сервере Puma. Я использую conncetion_pool для Redis ( больше ).
#initializers/redis.rb
require 'connection_pool'
REDIS = ConnectionPool.new(size: 10) { Redis.new db: 15, driver: :hiredis }
...
#Somewhere in the app
REDIS.with do |conn|
conn.geoadd($DRIVER_LOCATIONS, latitude, longitude, id)
end
Но в приложениях Rails 5+ Action Cable также использует Redis в качестве адаптера для производства:
#config/cable.yml
development:
adapter: async
test:
adapter: async
production:
adapter: redis
url: <%= ENV.fetch("REDIS_URL") { "redis://localhost:6379/1" } %>
channel_prefix: app_production
Могу ли я каким-то образом предоставить пул соединений в качестве адаптера Action Cable, и это необходимо?