ejabberd 需要超过 30 分钟才能检测到用户会话终止?

ejabberd takes more than 30 minutes to detect user session termination?

我正在使用 ejabberd-16.02。我有以下问题:如果用户上线并且 wifi 关闭或没有网络(用户没有再次回到服务器上)然后 ejabberd 服务器需要超过 30 分钟来终止用户会话。

我是否遗漏了任何配置或者这是 ejabberd 服务器的默认行为?

这与 TCP/IP 的工作方式有关,并不特定于 ejabberd。通常,Linux 配置为在大约 2 小时后检测连接丢失。

如果您想更快地检测连接丢失,您需要启用应用程序级别检查。对于 ejabberd 社区服务器,可以更快地检测连接丢失的可用功能是 mod_pinghttps://docs.ejabberd.im/admin/guide/configuration/#modping