Jetty的优雅关闭

Jetty的关闭,可以调用Server.stop()方法,这个方法先关闭connections,然后处理队列中未完成的request。这里有个问题,未完成的request还会写响应,但此时connection已经关闭了。 chazovams在issues中提了这个问题,gregw给了解决办法。

chazovams: Jetty中Server.stop()方法先关闭connections,然后处理队列中未完成的request。在我的应用中,request完成后,由于connection已经关闭了,响应不能写回去了。我用的是9.4.7版本,我怎么才能避免request‘完成’之前不要关闭connection?

gregw: 嗨chazovams 你是否配置了stats handler,和一个positive stop超时参数?

chazovams: stop超时默认值是30s,我没有设置stats handler。但当我设置这个stats handler后可以关闭了,你能解释一下,为什么不设置这个handler就不能优雅的关闭吗?我使用的是SpringBoot,我发现只能在Server Customizer中设置,但我不想这么做。

gregw: 没有stats handler,Jetty不知道未完成的request数量。正是stats handler在统计这个数量count,而且在stats handler优雅关闭时,它要等到count到0。

https://github.com/eclipse/jetty.project/issues/2076

Jetty的优雅关闭,需要配置一个stats handler和一个positive stop超时参数。

转载于:https://my.oschina.net/u/1030459/blog/1846030

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值