为什么 play 2.6 会在空闲 85 秒后关闭一个 websocket?虽然玩 2.5 没有
Why does play 2.6 close a websocket after 85 seconds when it is idle? While play 2.5 does not
更新玩 2.6 后,我注意到 websocket 连接在闲置 85 秒后关闭。然而,在 play 2.5 中,websocket 连接在空闲时保持打开 +15 分钟。
play 2.6 有什么变化?有没有办法在 play 2.6 中保持 websocket 连接打开,而无需在应用程序级别手动保持连接?
似乎对于 Play 2.6 akka http 而不是 netty 用于后端。这意味着为 akka http 服务器设置了默认超时配置。
可以通过将以下内容添加到 applications.conf 文件来增加空闲超时。
play.server.http.idleTimeout = 180s
但是根据播放文档:
Note: In dev mode, when you use the run command, your application.conf settings will not be picked up by the server. This is because in dev mode the server starts before the application classpath is available.
因此,为了使用更长的 idleTimeout 进行测试,可以 运行 播放实例使用:
sbt run -Dplay.server.http.idleTimeout=180s
有关更多文档,请参阅:
https://www.playframework.com/documentation/2.6.x/SettingsAkkaHttp
http://doc.akka.io/docs/akka-http/current/java/http/server-side/websocket-support.html
更新玩 2.6 后,我注意到 websocket 连接在闲置 85 秒后关闭。然而,在 play 2.5 中,websocket 连接在空闲时保持打开 +15 分钟。
play 2.6 有什么变化?有没有办法在 play 2.6 中保持 websocket 连接打开,而无需在应用程序级别手动保持连接?
似乎对于 Play 2.6 akka http 而不是 netty 用于后端。这意味着为 akka http 服务器设置了默认超时配置。
可以通过将以下内容添加到 applications.conf 文件来增加空闲超时。
play.server.http.idleTimeout = 180s
但是根据播放文档:
Note: In dev mode, when you use the run command, your application.conf settings will not be picked up by the server. This is because in dev mode the server starts before the application classpath is available.
因此,为了使用更长的 idleTimeout 进行测试,可以 运行 播放实例使用:
sbt run -Dplay.server.http.idleTimeout=180s
有关更多文档,请参阅:
https://www.playframework.com/documentation/2.6.x/SettingsAkkaHttp
http://doc.akka.io/docs/akka-http/current/java/http/server-side/websocket-support.html