我想在多线程Puma服务器上使用Action Cable和Redis。我将conncetion_pool用于Redis(more)。
#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
我可以以某种方式提供连接池作为操作电缆适配器吗?