我一直在ejabberd上使用mod_ping,并且可以观察到:
ping_interval
:秒秒
如果启用了上一个选项,多长时间将ping发送到连接的客户端。如果客户端连接在此时间间隔内未发送或接收任何节,则会向客户端发送ping请求。默认值为60秒。
timeout_action
:none
| kill
当客户端在不到32秒的时间内没有应答服务器ping请求时该怎么办。默认是什么都不做。
目前,我的ping间隔为15秒。正如所观察到的那样,较小的值会耗尽移动客户端的电量。
因此,测量一下我将 IQ_TIMEOUT值从32秒更改为5秒(更小的值)。这样就可以通过相对较小的等待来关闭我的连接。这是从连接对等体接收确认的等待时间的变化,即如果在5秒内未收到确认,则套接字现在由ejabberd关闭。
如果这会影响ejabberd的任何其他功能,我很担心吗?
在我的情况下设置一个小值(例如5秒)有什么缺点?
答案 0 :(得分:1)
有些移动连接的往返时间(RTT)要高得多,然后是5秒。你有可能完成这种低设置的完全活跃的连接。