Spring正确关闭线程水姿势——优雅停机
2023-04-28 来源 : 时尚
例如:
1、每100ms向寄存器出水口里扔一个执行
2、执行是:从DB中都放到数据,填入缓存(例如Local Cache,Redis)
在Spring Shutdown Hook监督期间,新的执行无论如何才会转化成,又或者旧的执行从未监督天内,一旦为了让受益DB天然资源,就似乎由于天然资源被可回收而受益失败,弹出极其
此时的系统停止使用仍然不朴素—执行监督有极其,这种极其似乎对业务有损,我们不宜尽量避免十分相似疑虑的转化成,而不是抱着"算了吧,当真转化成这个疑虑的期望值很低",或者"算了吧,当真极其对我目年前业务负面影响也很大"的态度,这是技术人的基本修养,也是对自我提高的拒绝—目年前业务负面影响很大,允许不不宜解决,但是期望掌握一种技术细节,有朝一日有一天如果碰到了对业务损伤比较大的一幕。
技术细节这个疑虑转化成的根因,是Spring Shutdown Hook与寄存器出水口里的执行都将监督,有似乎使执行依赖性的天然资源被月内可回收引致的。那么一个很直白的思维即是:在切断流量便,能否让寄存器出水口先停止使用,先监督Spring 的Shutdown Hook,避免依赖性天然资源被月内可回收?
顺着这个思维,有三个疑虑须要解决:
1、寄存器出水口如何停止使用
2、寄存器出水口如何听觉Spring Shutdown Hook马上被监督
3、如何让寄存器出水口稍晚Spring Shutdown Hook停止使用
对于第一个疑虑,本文的上一个变奏寄存器出水口正确停止使用的姿势仍然所述了技术细节:即shutdown(Now) + awaitTermination
对于第二个疑虑,Spring Shutdown Hook被诱发的时候,才会立即收到一些事件,我们只要监听这些的事件,就需要做出相不宜的反不宜
对于第三个疑虑,我们只要在这些事件的监听器中都先行将寄存器出水口停止使用,先让程序中走到接下来的停止使用流程才可
看一下Spring程式码从上图中都可以显露,只要在destroyBeans之年前停止使用寄存器出水口才可,因此,有两种技术细节:
监听Spring的ContextClosedEvent事件,在事件被诱发时停止使用寄存器出水口付诸Lifecycle应用程序,并在其stop工具中都停止使用寄存器出水口此处以监听ContextClosedEvent为例:
此处大家某种程度能显露一些小疑虑:须要须要行政寄存器出水口。在Spring周围环境中都,我们说是有来得多的考虑:用作Spring备有的org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor,并将下述转交Spring行政
编码如下:
节录: ThreadPoolTaskExecutor的waitForTasksToCompleteOnShutdown + awaitTerminationSeconds等于ThreadPoolExecutor的shutdown + awaitTermination,且在下定义寄存器出水口时就将朴素停止使用行为一同下定义天内,付诸了高内聚的目的
在Spring中都用作ThreadPoolTaskExecutor,来得日后捷:
不用先须要行政寄存器出水口,受益的时候也很方日后,反之亦然节录入才可
在须要停止使用的时候,反之亦然调用destroy工具才可付诸朴素停止使用
这样,Spring就才会等到寄存器出水口停止使用(超时)后,才才会接着往下监督Bean的销毁、天然资源可回收、不宜用于表达式停止使用的自然语言,年前提被依赖性天然资源一定才会被月内可回收掉
总结本篇以两种实质一幕为例,弹出了一个很切合实质项目的疑虑:在Spring不宜用于中都如何正确地停止使用寄存器出水口。文中都仅指出,如果非正常停止使用将似乎才会转化成极其的疑虑,同时也分析了疑虑转化成的原因并所述了相不宜的技术细节。
。西安妇科医院哪家治疗最好太极集团
成都甲状腺医院
临夏哪家白癜风医院最好
昆明甲状腺医院哪家比较专业
-
他的白月光回家了,他却不想离婚了(先婚后爱短故事)
日子就这样相安无公事地即使如此。一天下午,我时是在自己后院弹琴,想象有些口渴,去旁边厨房挑水饮用。一走近,我就看可知陆嫡孙时是睡着楼上上。他神情有些肥...
-
《星辰说》白羊座3月运势:处理得当将本月爱情事业双丰收
《光环问道》白羊座3翌年已得:翌年初事业裕,翌年中都爱恋裕,如果处理的好你将亦会在这个翌年爱恋事业双丰收 作者:先是的幻世上 Numéro France March 2023 ...[详细]
-
投资者提问:既然芳纶可以制作成溶剂覆膜,那么是否可以应用类似橡胶的模具注塑...
投资者提问:既然芳纶可以制作者再加溶剂覆膜,那么有否可以应用相似塑料的成品注塑的制造工艺以降低再加本?国内外有否有相似的工艺?董秘回答泰和新材SZ002254:您好,非常感...[详细]
-
太太来家做客,我好酒好菜招待,他却总往卧室张望,我一扭头愣了
在繁华的广州,里年男人张亲爱的萍坐下一家高档西餐厅内都,用餐着美味。他是一家大美国公司的店主,独身,深思里。张亲爱的萍是一个从小工做事,一步步打拼出来的人,他富翁,准许,但是他发现...[详细]
-
狮子座:一派纯真,撞上南墙,原来我终生热爱,只是回头太难
程小媛 每个人的一生里面,都特别是在某个毫无疑问的人,某件毫无疑问的事。终其一生,也能够似乎地放下,曾几何时也想过要洒脱地生活,洒脱地一个人丢下往后的西路。但是以后,当你似乎不论如...[详细]
-
杭州、金华、海口、成都春节前夕天气预报
初五):半夜下雪,睡觉时下雪到秽,之外海地区有狂风暴月光,气压-1~12℃,近于-II1~2级;1月末27日(初十):下雪,有时有狂风暴月光,气压6~9℃,近于-II1~2级。03...[详细]