记录一次 JBPM 优化调研

前提:我之前也没有接触过JBPM,在网上寻找JBPM优化的方法很少,这次优化只能自己不断去试,花了不少时间,试了几种方案,有点效果,记录下来供别人参考交流,不能一直白嫖。。。

背景:我们项目是集成jbpm的,功能相对简单。JBPM版本 :7.46.0 final。数据库:oracle。

目的:优化一个接口的调用时间。目前该接口在测试环境平均响应时间7秒左右。

优化前:一个接口 需要调用两次微服务,以及196个sql。几乎都是JBPM自己的东西主要集中在JBPM taskService.getTaskById() 、taskService. complete()两个方法上。主要优化方向就是这些sql。

方案一:更换连接池,原先项目中的连接池使用的是dbcp,换成hikari以后性能提升约15%。

方案二:JBPM的方法和业务单独开两个线程去执行,每个项目不一样,这个就不展开。

方案三:修改hibernate的相关参数,fetch_size,batch等相关的参数,有一些作用,这个主要根据你的sql具体情况修改。

分析日志,sql主要集中在两个方面,一:task参数 大约60个sql。二:audit log 大约80个sql。

task 的参数大约三十个,这些参数会被记录到数据库中去,我优化成 通过JBPM传参只传6个,性能提升很多。非流程必须的参数,尽量不要传。

方案五:日志显示,关闭audit log。 官网上提供了添加audit log 的方法,我对项目反向操作后,发现会启动失败,根据错误改了又改,主要中间还有一层公司封装的东西,最后还是放弃了。不过,研究了发现,JBPM的audit log 是通过processListener 做的。 直接kieSession remove掉就好。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值