Groovy 脚本连接未关闭造成JIRA系统卡顿甚至挂掉

JIRA系统是由澳大利亚的Atlassian公司开发的一款基于Java架构的项目管理软件,最初是作为错误和问题跟踪系统而设计的,但随着时间的推移,它已经发展成为一个功能全面的项目管理工具。

而我们公司使用JIRA来管理各种需求,项目发布流程管理,BUG 跟踪,团队协作,工时填写,流程控制,数据统计等。主要就是通过开发自定义插件和依赖第三方插件来完成各种定制化功能。

ScriptRunner 就是一款功能强大的第三方插件,他可以使用脚本去控制流程,插入监听器、条件、判断、PostFunction等。而它支持的就是Groovy脚本。

bug描述

因为以前的脚本查询很多是一个库的连接跨库查询多个库的数据,公司要求不同的数据库需要单独的账号权限控制,而且为了提升填写工时的性能,我们将之前别的库的表重新设计成了JIRA系统库的AO表,所以相关的脚本都需要重构。重构的插件和脚本上线后不久,系统开始出现卡顿,系统连接数升高后不能自动回落,只能等待系统自己的垃圾回收。后续工作时间连接累积升高不释放,造成连接池耗尽,系统资源耗尽系统崩溃,只能临时重启系统解决问题。

bug解决过程

Bug 出现后因为影响广泛,JIRA系统公司自己和客户都在上面办公,交流。所以领导要求尽快解决,连接莫名升高不释放的问题。

接下来就是开始寻找原因,第一个想到的就是查看系统日志,但是系统日志一切表现正常,因为脚本和插件功能本身没有问题,只是连接没有关闭,然后有很多功能都涉及到数据库操作,难以定位是那些连接没有关

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值