工作流Context缓存过大导致内存溢出
所属模块系统性能
适用版本Eas540
问题描述EAS540的系统,系统使用高峰时,多次出现服务器宕机
适用版本Eas540
问题描述EAS540的系统,系统使用高峰时,多次出现服务器宕机
原因分析1、通过收集的heapdump文件分析,和工作流相关的缓存(JCache)占了7百多兆空间展开上述HashMap集合中任一对象继续展开objectrefimpl对象orgrangeInfo有1百多万个,共占用4百多兆2、总结因为工作流这边会把用户的context缓存起来,但是有些业务会修改context,往context里面放很多东西(如权限,组织的信息),导致context对象很大,所以就有可能出现这样的问题。
由于540的JCache中没有关于容量的控制,只有通过缓存时间来控制,目前context的缓存时间为12个小时。
解决方法修改了对context的缓存逻辑1. 控制context缓存的大小(控制在1000个以内)2. 修改缓存时效,把原来的12小时修改成1小时
关键字工作流,缓存,内存溢出
工作流Context缓存过大导致内存溢出
所属模块系统性能适用版本Eas540问题描述EAS540的系统,系统使用高峰时,多次出现服务器宕机原因分析1、通过收集的heapdump文件分析,和工...
点击下载文档
本文2024-09-16 22:39:38发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-49547.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章