在Akka HTTP中保持WebSocket连接的最佳方法是什么?

3
如果没有消息发送或接收,连接将在一分钟后关闭。
我不想像这样连续发送文本消息以保持连接的开启:
keepAlive(maxIdle = 10.seconds, () => TextMessage.Strict("Keep-alive message")

Akka HTTP中是否有自然发送ping/pong消息的功能?我需要做什么呢?

1个回答

2
如果您不想手动使用keepAlive组合器,则可以使用Akka HTTP的自动保持活动状态的ping支持,该支持通过应用程序配置文件中的设置启用。
对于客户端
akka.http.client.websocket.periodic-keep-alive-max-idle = 10 seconds

对于服务器端

akka.http.server.websocket.periodic-keep-alive-max-idle = 10 seconds

更多信息请查看链接文档。


1
仅在服务器端启用是否足够?我认为当服务器发送ping时,客户端应该回复pong,这样就可以工作了。您能否请澄清一下? - Suma

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接