我需要在关闭Play应用程序时停止服务,但我需要确保所有请求都已处理完毕。 我已经覆盖Global.scala中的'onStop'方法以获得通知,但是由于请求是异步处理的,我可以确定在调用onStop方法时所有请求都已处理完毕吗?
也许可以使用底层的Netty API检查是否已发送所有响应?
由于
编辑:
我用gatling进行了一些测试,并且在处理最后一次请求之前完成了停止通知
[info] application - Response 19528
[info] application - All stoped
[info] play - Shutdown application default Akka system.
[info] application - Start Request 19529
[info] application - Response 19529
[info] application - Start Request 19530
答案 0 :(得分:0)
您必须编写具有高优先级的播放插件(低数字,例如100)并覆盖onStop方法。