自从在本地开发环境中尝试ActionCable。我注意到应用程序放慢速度并经常挂起。
如果我运行netstat,我会看到很多连接,由动作电缆创建。这是预期和正常吗?
netstat -atn | grep 3000
tcp4 0 0 127.0.0.1.3000 127.0.0.1.52163 ESTABLISHED
tcp4 0 0 127.0.0.1.52163 127.0.0.1.3000 ESTABLISHED
tcp4 0 0 127.0.0.1.3000 127.0.0.1.52161 ESTABLISHED
tcp4 0 0 127.0.0.1.52161 127.0.0.1.3000 ESTABLISHED
tcp4 0 0 127.0.0.1.3000 127.0.0.1.52159 ESTABLISHED
tcp4 0 0 127.0.0.1.52159 127.0.0.1.3000 ESTABLISHED
tcp4 0 0 127.0.0.1.3000 127.0.0.1.52157 ESTABLISHED
tcp4 0 0 127.0.0.1.52157 127.0.0.1.3000 ESTABLISHED
tcp4 0 0 127.0.0.1.3000 127.0.0.1.52155 ESTABLISHED
tcp4 0 0 127.0.0.1.52155 127.0.0.1.3000 ESTABLISHED
tcp4 0 0 127.0.0.1.3000 127.0.0.1.52152 ESTABLISHED
tcp4 0 0 127.0.0.1.52152 127.0.0.1.3000 ESTABLISHED
tcp4 0 0 127.0.0.1.3000 127.0.0.1.52146 ESTABLISHED
tcp4 0 0 127.0.0.1.52146 127.0.0.1.3000 ESTABLISHED
tcp4 0 0 *.3000 *.* LISTEN
tcp4 0 0 127.0.0.1.3000 127.0.0.1.51682 TIME_WAIT
tcp4 0 0 127.0.0.1.3000 127.0.0.1.51688 TIME_WAIT
tcp4 0 0 127.0.0.1.3000 127.0.0.1.51684 TIME_WAIT
tcp4 0 0 127.0.0.1.3000 127.0.0.1.51686 TIME_WAIT
tcp4 0 0 127.0.0.1.3000 127.0.0.1.51667 TIME_WAIT
tcp4 0 0 127.0.0.1.3000 127.0.0.1.51690 TIME_WAIT
我尝试过改变热切加载,但似乎并没有改变这种行为
config.eager_load = true
答案 0 :(得分:1)
production:
adapter: redis
url: redis://redis.example.com:6379
local: &local
adapter: redis
url: redis://localhost:6379
development: *local
test: *local
https://www.phusionpassenger.com/library/config/standalone/action_cable_integration/
点击链接
异步适配器
异步适配器用于开发/测试,不应在生产中使用。
Redis适配器
操作电缆包含两个Redis适配器:“普通”Redis和Evented Redis。两个适配器都要求用户提供指向Redis服务器的URL。另外,当为多个应用程序使用相同的Redis服务器时,可以提供channel_prefix以避免通道名称冲突。有关详细信息,请参阅Redis PubSub文档。
PostgreSQL适配器
PostgreSQL适配器使用Active Record的连接池,因此使用应用程序的config / database.yml数据库配置进行连接。这可能在将来发生变化。