起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 34387|回复: 15

[处理中3] externalAdvanceProcessQueryAction处理速度慢

[复制链接]

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
发表于 2021-5-25 08:59:55 | 显示全部楼层 |阅读模式
版本: BeX5V3.4 小版本号:
数据库: MS SQLServer 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: Windows 其它 浏览器: Chrome
本帖最后由 doreamon 于 2021-5-25 09:02 编辑

流程审批过程中,首环节提交正常,后续环节提交时,速度非常慢,发现是externalAdvanceProcessQueryAction函数处理过慢,该如何解决


ceProcessQueryActionexternalAdvanceProce





企业微信截图_16219039128073.png
企业微信截图_16219044364716.png

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-5-25 10:52:29 | 显示全部楼层
1.在执行规则中把执行人表达式和范围表达式设置为一个固定的人看一下速度,如果不慢,把之前设置的函数发一下看看

2.开启平台的JVM跟踪日志还可以同start和end的标志看action具体的执行时间
       修改%JUSTEP_HOME%/runtime/BusinessServer/WEB-INF/justep.log.properties文件,在最后添加以下代码:
log4j.logger.com.justep.log.jvm=DEBUG,CONSOLE
log4j.additivity.com.justep.log.jvm=false
        修改完后, 重启服务器,执行任何action时, 服务器控制台应该可以看到类似以下的日志:
2018-12-12 18:15:45 [JVM]start...DC9DC824E8084AD1BBF965E83D927896, process: /demo/process/process/and/andProcess, activity: bizActivity1, action: queryOrderAction
2018-12-12 18:15:45 [JVM]end.....DC9DC824E8084AD1BBF965E83D927896, process: /demo/process/process/and/andProcess, activity: bizActivity1, action: queryOrderAction, operator: PSN01, system, total: 4095MB, free: 1172MB, use: 2922MB, leak free: 1MB, leak use: 0


3.可以输出sql的执行时间,确认是不是sql执行慢
   
   修改%JUSTEP_HOME%/runtime/BusinessServer/WEB-INF/justep.log.properties文件,在最后添加以下代码:
log4j.logger.com.justep.log.sql.time=DEBUG,CONSOLE
log4j.additivity.com.justep.log.sql.time=false
com.justep.log.sql.time=0
修改完后, 重启服务器
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2021-5-25 13:04:21 | 显示全部楼层
jishuang 发表于 2021-5-25 10:52
1.在执行规则中把执行人表达式和范围表达式设置为一个固定的人看一下速度,如果不慢,把之前设置的函数发一 ...

确实是sql执行慢,但是其他流程也会使用这个action,速度并不慢,该如何解决
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-5-25 14:15:44 | 显示全部楼层
要看sql的具体where条件和查的数据是不是都是一样的,具体慢的sql语句是什么
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2021-5-25 14:40:28 | 显示全部楼层
jishuang 发表于 2021-5-25 14:15
要看sql的具体where条件和查的数据是不是都是一样的,具体慢的sql语句是什么 ...

是通过过滤sid,查询sa_task表
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-5-26 09:38:49 | 显示全部楼层
发具体的sql

确认sa_task中的记录数有多少?sql语句到数据库中执行慢吗?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2021-5-27 17:58:00 | 显示全部楼层
jishuang 发表于 2021-5-26 09:38
发具体的sql

确认sa_task中的记录数有多少?sql语句到数据库中执行慢吗?

根据控制台打印出来的信息,在执行完一个sql之后,在执行下一个sql之前,空了很长的时间。具体sql如下:
--> sql:SELECT  CC_YWZDFLC_ZB.本次累计 AS fBCFYLJ FROM 流程_主表 CC_YWZDFLC_ZB  WHERE CC_YWZDFLC_ZB.fID = ?
--> binds:[4225187B6E1249C7A2BE1AB8D6C8F0E5]

(中间空了很久,才跳出下面的sql)



2021-05-27 17:45:25 [SQL Time]sql 执行时间:10ms, exec KSQL: select org.sFID, org.sFName from SA_OPOrg org where org.sValidState=1  and (org.sCode='32111111') order by org.sSequence
  --> sql:SELECT  org.sFID AS sFID, org.sFName AS sFName FROM SA_OPOrg org  WHERE  (org.SVALIDSTATE = ?) AND (org.SCODE = ?)   ORDER BY org.SSEQUENCE ASC
--> binds:[1, 32111111]
2021-05-27 17:45:25 [SQL Time]sql 执行时间:2ms, exec KSQL: select c.sContent from SA_ProcessControl c where c.sProcess='/CCTCERP2/finance/CostFee/process/CostFee/costFeeProcess' and c.sActivity='businessActivity2' and c.sOperatorID='617' and c.sAction='advanceProcessAction' and (c.sProcessTemplateID2 IS NULL or c.sProcessTemplateID2 = '')
  --> sql:SELECT  c.SCONTENT AS sContent FROM SA_ProcessControl c  WHERE  (c.SPROCESS = ?) AND (c.SACTIVITY = ?) AND (c.SOPERATORID = ?) AND (c.SACTION = ?) AND ( (c.SPROCESSTEMPLATEID2 IS NULL) OR (c.SPROCESSTEMPLATEID2 = ?) )
--> binds:[/CCTCERP2/finance/CostFee/process/CostFee/costFeeProcess, businessActivity2, 617, advanceProcessAction, ]
2021-05-27 17:45:25 [JVM]end.....9638D33E6973417AA7C38D630874577C, process: /CCTCERP2/finance/CostFee/process/CostFee/costFeeProcess, activity: businessActivity2, action: advanceProcessQueryAction, operator: 617, 方方, total: 8018MB, free: 1417MB, use: 6600MB, leak free: -119MB, leak use: -119MB
2021-05-27 17:45:25 [JVM]end.....9E0527C3F51846DF9F5FA385CD4AF2C9, process: /CCTCERP2/finance/CostFee/process/CostFee/costFeeProcess, activity: businessActivity2, action: externalAdvanceProcessQueryAction, operator: 617, 方方, total: 8018MB, free: 1417MB, use: 6600MB, leak free: -119MB, leak use: -119MB

回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-5-27 19:47:28 | 显示全部楼层
发完整的日志,前面应该有个匹配的start
task.png
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2021-5-28 08:57:59 | 显示全部楼层
jishuang 发表于 2021-5-27 19:47
发完整的日志,前面应该有个匹配的start

externalAdvanceProcessQueryAction  控制台内容

externalAdvanceProcessQueryAction.zip

3.92 KB, 下载次数: 407

回复 支持 反对

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2021-5-31 08:38:45 | 显示全部楼层
jishuang 发表于 2021-5-27 19:47
发完整的日志,前面应该有个匹配的start

排查不到问题,是否可以远程
1433771809 QQ号
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-24 06:27 , Processed in 0.063890 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表