gpt4 book ai didi

ruby - 我如何找出谁连接到 ActionCable?

转载 作者:数据小太阳 更新时间:2023-10-29 06:43:07 24 4
gpt4 key购买 nike

我看过ActionCable.server.open_connections_statisticsActionCable.server.connections.lengthActionCable.server.connections.map(&:statistics)ActionCable.server.connections.select(&:beat).count 等,但这只是“每个进程”(服务器、控制台、服务器 worker 等)。我如何找出此时订阅了 ActionCable 的每个人?这应该在每个环境(开发、暂存、生产)中的任何 Rails 进程上返回相同的值。因此,例如,在开发控制台中,您还可以看到开发服务器上的连接,因为理论上它们使用相同的订阅适配器(redis、async、postgres)。

Rails 5.0.0.beta3, ruby 2.3.0

相关ActionCable - how to display number of connected users?

最佳答案

如果使用 redis,您可以看到所有的 pubsub channel 。

[2] pry(main)> Redis.new.pubsub("channels", "action_cable/*")
[
[0] "action_cable/Z2lkOi8vbWFvY290LXByb2plL3QvUmVzcG9uXGVyLzEx",
[1] "action_cable/Z2lkOi8vbWFvY290LXByb2plL3QvUmVzcG9uXGVyLzI"
]

这将同时显示所有 Puma worker 的所有 websocket 连接。如果您有多台服务器,它也可能会在此处显示这些服务器。

关于ruby - 我如何找出谁连接到 ActionCable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36106542/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com