客户端(spark,psi)和服务器端(tigase)有各自的tcp保活机制。这个很好理解,客户端需要知道啥时候服务器挂了,服务器也需要知道客户端啥时候挂了。
客户端每隔一段时间(大概几十秒,每种客户端不一样)就会向服务器发tcp层保活包(带一个字节的数据)。
服务器每隔一段时间(默认几十分钟)就会向客户端发保活包。tigase保活包有两种:xmpp层ping包,tcp层保活包(带一个字节数据)。
服务器端,保活包类型,探测间隔时间,连接超时时间都可以设置。具体设置参考:
http://docs.tigase.org/tigase-server/7.0.0/Properties_Guide/html/#watchdogDelay
源码位置:
tigase.server.ConnectionManager中的Watchdog
客户端,界面上没有tcp保活设置入口。