ruby-on-rails – 如何更改动作电缆轨道中的ping间隔

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何更改动作电缆轨道中的ping间隔前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用ActionCable并在每3秒间隔(在ActionCable库中提到)接收来自服务器的ping.
我的问题是:如何在订阅时更改ping间隔?

任何的想法?

解决方法

扩展@BoraMa的答案:

你可以像这样覆盖后端的常量:

# config/initializers/action_cable.rb
module ActionCable
  module Server
    module Connections
      BEAT_INTERVAL = 5
    end
  end
end

在客户端,您还需要覆盖值:

// this should be after //= require action_cable
// but before any App.cable.subscriptions.create call
// the value here *must* be 2 times the backend's value
ActionCable.ConnectionMonitor.staleThreshold = 10;

请注意,这种方法通常是一个非常糟糕的主意:弄乱内部变量是导致错误和问题的直接方法之一.

事实上,ruby甚至会警告你:

config/initializers/action_cable.rb:7: warning: already initialized constant ActionCable::Server::Connections::BEAT_INTERVAL

只有当你知道自己在做什么时才使用它.

原文链接:https://www.f2er.com/ruby/264777.html

猜你在找的Ruby相关文章