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

QQ登录

只需一步,快速开始

查看: 10163|回复: 14

[处理中3] 现网环境偶现突然间无法登录的情况

[复制链接]

35

主题

80

帖子

286

积分

中级会员

Rank: 3Rank: 3

积分
286
QQ
发表于 2021-11-19 15:38:25 | 显示全部楼层 |阅读模式
版本: BeX5V3.5 小版本号:
数据库: MS SQLServer 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: 浏览器: Chrome
问题描述:一般年底(业务比较繁忙,操作的人比较多)会经常出现突然间系统不响应的情况,表现为登录的时候,输入用户名和密码后页面不响应,过一段时间后报页面长时间不影响的错误。

针对此问题所做的研究:
想法:刚开始怀疑是后台服务僵死了,怀疑在线用户数过多,或者后台服务器占用内存过大。
验证结果:
1、今天又出现这样的情况,然后快速看了后台的内存,1.5g(并不大,平常正常工作也会达到这个值)
2、在线用户数188,也不大,高峰的时候能达到近300

目前存在的疑问:
1、当时出问题的时候,在线用户数的刷新功能还是OK的,但是点击其他的都不可以了,为啥在线用户数的刷新功能还是OK的呢?
2、后台的日志有点奇怪
2021-11-19 14:37:03 [http-8089-8] [WeiTuoChuTuGLProcess] INFO: 推送_DA_出图信息,推送结果:{"STATUS":"S","ID":"1637303805093","TYPE":"dm调用对外系统接口"}
2021-11-19 14:47:23 [http-8089-104] [com.justep.business.server.BusinessServerServlet] ERROR: Not registed session:BE572B3CB56E45555E54E81060FDE337, jsessionid:null, action: {"accept":"application/json","action":"queryLogAction","actionFlag":"__action_0__","activity":"mainActivity","contentType":"json","executeContext":"","executor":"","parameters":{"columns":"SA_Log,sAction,sActionName,sActivity,sActivityName,sCreateTime,sCreatorDeptID,sCreatorDeptName,sCreatorFID,sCreatorFName,sCreatorOgnID,sCreatorOgnName,sCreatorPersonID,sCreatorPersonName,sCreatorPosID,sCreatorPosName,sDescription,sDeviceType,sEBField51,sEBField52,sEDField21,sEDField22,sEIField41,sEIField42,sENField11,sENField12,sESField01,sESField02,sESField03,sESField04,sETField31,sETField32,sIP,sOperatingSystem,sParameters,sProcess,sProcessName,sResult,sStatusName,sTypeName,version","limit":20,"offset":0,"variables":{}},"process":"/SA/log/logProcess","translateParameter":{"cellnameByRelation":false,"dataType":"row-list","includeState":true,"rowsConfig":{"concept":"SA_Log","sequence":"SA_Log,calcCheckBox,sAction,sActionName,sActivity,sActivityName,sCreateTime,sCreatorDeptID,sCreatorDeptName,sCreatorFID,sCreatorFName,sCreatorOgnID,sCreatorOgnName,sCreatorPersonID,sCreatorPersonName,sCreatorPosID,sCreatorPosName,sDescription,sDeviceType,sEBField51,sEBField52,sEDField21,sEDField22,sEIField41,sEIField42,sENField11,sENField12,sESField01,sESField02,sESField03,sESField04,sETField31,sETField32,sIP,sOperatingSystem,sParameters,sProcess,sProcessName,sResult,sStatusName,sTypeName,version"},"transformIdcolumn":true,"useNamespace":true}}
2021-11-19 14:49:35 [http-8089-112] [com.justep.business.server.BusinessServerServlet] ERROR: Not registed session:844E0879DE05E3BD5735C794ED23E92D, jsessionid:null, action: {"accept":"application/json","action":"openActivityAction","actionFlag":"__action_0__","activity":"pieActivity","contentType":"application/json","executeContext":"","executor":"","parameters":{},"process":"/SA/process/report/tasknum/tasknumProcess"}
2021-11-19 14:49:35 [http-8089-114] [com.justep.business.server.BusinessServerServlet] ERROR: Not registed session:036D9B68E7EA3E5FEFDA9A6DEC67EB73, jsessionid:JSESSIONID=null, action: <?xml version="1.0" encoding="UTF-8"?>
<action process="/SA/process/report/tasknum/tasknumProcess" activity="pieActivity" action-flag="__action_0__" executor="" execute-context="" name="deptPieChartAction"><parameters xmlns:xbiz="http://www.justep.com/xbiz#"></parameters></action>
2021-11-19 14:49:35 [http-8089-115] [com.justep.business.server.BusinessServerServlet] ERROR: Not registed session:40657DF1F6EA60A3D3643D0C90848927, jsessionid:JSESSIONID=null, action: <?xml version="1.0" encoding="UTF-8"?>


大概从14:37分后系统就不能响应了,但是日志中,有一些错误,而且这些错误的线程号比较奇怪,正常工作的时候,线程号基本在20以内,没有响应的时候,线程号已经到一百以上的,线程号这么大,感觉服务器还是有点问题

请帮忙分析一下这个问题,这个问题在生产环境中虽然是偶现,但是业务量上来的时候,一个星期大概会出现2次,给生产带来严重的影响,期待快速回复。


justep.biz_part.zip

8.94 KB, 下载次数: 73

出问题时候的日志

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-11-23 10:02:44 | 显示全部楼层
检查数据库连接数设置tomcat的context.xml文件中的数据源都需要修改maxActive和maxIdle

1.开启平台的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


2.可以输出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
修改完后, 重启服务器


3.如果是查询数据时数据量大导致的慢可以用分页加载
  http://docs.wex5.com/bex5-deploy-question-list-10027/
  

4.可以安装VisualVM工具(它可以监控业务服务器JVM的实时内存状态和线程调用信息)

5.可以安装tomcat的性能检测工具看数据库连接的占用情况
   http://docs.wex5.com/wex5-deploy-question-list-0004/
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

35

主题

80

帖子

286

积分

中级会员

Rank: 3Rank: 3

积分
286
QQ
 楼主| 发表于 2021-11-24 17:12:33 | 显示全部楼层
jishuang 发表于 2021-11-23 10:02
检查数据库连接数设置tomcat的context.xml文件中的数据源都需要修改maxActive和maxIdle

1.开启平台的JVM跟 ...

19号不能登录,重启Tomcat,就可以登陆了。今天24号,又不能登陆了,我们用VisualVM工具每隔几秒钟截了一些日志,请帮忙看一下

threaddump.rar

91.49 KB, 下载次数: 80

回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-11-25 15:26:37 | 显示全部楼层
VisualVM中直接把监控的内容导出
vm.png
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

35

主题

80

帖子

286

积分

中级会员

Rank: 3Rank: 3

积分
286
QQ
 楼主| 发表于 2021-11-25 16:17:49 | 显示全部楼层
jishuang 发表于 2021-11-25 15:26
VisualVM中直接把监控的内容导出

之前我们抓dump 的时候忘记保存就重启系统了,所以数据没有保存,只好截图了。
PS:请教个问题,就是抓的数据没有保存就重启系统,现在还有办法导出数据吗?

线程监控图.zip

336.24 KB, 下载次数: 66

回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-11-29 09:09:22 | 显示全部楼层
截的图可能不出什么,需要导出文件分析里面具体哪个进程卡了

是否可以导出这个可以到网上查找工具相关的使用
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

35

主题

80

帖子

286

积分

中级会员

Rank: 3Rank: 3

积分
286
QQ
 楼主| 发表于 2021-11-29 10:51:27 | 显示全部楼层
jishuang 发表于 2021-11-29 09:09
截的图可能不出什么,需要导出文件分析里面具体哪个进程卡了

是否可以导出这个可以到网上查找工具相关的使 ...

能不能麻烦帮忙找一下,发给链接,我们找了半天也没有找到相关的工具,对这块也不懂,谢谢~
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-11-29 14:10:13 | 显示全部楼层
这个我们也不了解,VisualVM这个工具就是标准的,检测请求信息进程的可以到网上查找
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

35

主题

80

帖子

286

积分

中级会员

Rank: 3Rank: 3

积分
286
QQ
 楼主| 发表于 2021-11-30 16:02:02 | 显示全部楼层
jishuang 发表于 2021-11-29 14:10
这个我们也不了解,VisualVM这个工具就是标准的,检测请求信息进程的可以到网上查找 ...

今天又出现问题了,附件中是搜集到的信息,目前看线程池是耗尽的,请帮忙尽快定位一下。
以下是tomcat的线程池配置:
<Connector port="8080" URIEncoding="utf-8" maxHttpHeaderSize="8192" compression="on" maxThreads="1500" minSpareThreads="30" maxSpareThreads="150" enableLookups="false" redirectPort="8443" acceptCount="300" compressionMinSize="10" connectionTimeout="30000" disableUploadTimeout="true" compressableMimeType="text/html,text/xml,text/css,text/javascript,application/x-javascript,application/javascript,application/xml,application/json"/>

visual VM.zip

98.51 KB, 下载次数: 62

tomcat probe网页保存.rar

464.88 KB, 下载次数: 66

回复 支持 反对

使用道具 举报

35

主题

80

帖子

286

积分

中级会员

Rank: 3Rank: 3

积分
286
QQ
 楼主| 发表于 2021-11-30 16:56:28 | 显示全部楼层
从probe里面看,当时的数据连接被占满了
各个数据源的连接情况.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 13:25 , Processed in 0.072647 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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