7

私は ActionCable を使用しており、3 秒間隔ごとにサーバーから ping を受信して​​います (ActionCable ライブラリに記載されています)。私の質問は次のとおりです: サブスクリプション時に ping 間隔を変更するにはどうすればよいですか?

何か案が?

4

2 に答える 2

3

興味深いことに、Rails 5.0.0.rc1 の時点では、ping 間隔を構成できないようです。これは、 ActionCable::Server::Connections モジュールで定数として定義されています。

おそらくイニシャライザでこの定数を再定義して、サーバーが異なる間隔で ping を送信するようにすることもできますが、ping を受信するクライアント コードにも静的に定義されたタイムアウト(6 秒、つまり 2 秒に設定)があるため、これは最終的には役に立ちません。サーバーから逃したping)。サーバーからの ping なしで 6 秒のタイムアウトに達すると、再接続を試みます。また、Javascript クライアント コードでこの定数をオーバーライドする方法がわかりません。

この github の問題から判断すると、ネットワーク遅延を考慮に入れるなど、ping の動作を改善してより便利にする方法について、いくつかの関連する議論が進行中です。

しかし、本質的には、現時点では間隔を構成することはできず、3 秒未満の ping 間隔が必要でない限り、Rails でそれをオーバーライドする簡単な方法は今のところないと思います。

于 2016-05-20T10:16:05.747 に答える