一,背景当前EAS系统中【主数据】,包含了物料、客户和供应商,这几类基础资料属于D类基础资料(即集团管控),其中“分配”和“反分配”功能存在一定的性能问题,特别是单次操作时候选择的数据条数过大会造成服务资源极大的消耗,并最终可能会程序中断报错。二,卡顿原因定位分配和反分配卡顿问题大多数情况下,阻塞点在后台服务,可以在浏览器中打开以下地址定位卡顿的线程是哪个(每个5s左右点击“LivingThread”刷新,多刷新可得到准确的堆栈信息)(单实例)服务端堆栈:http://ip:端口/easportal/tools/threaddump.jsp?live=true(多实例)服务端堆栈:http://ip:端口/easportal/tools/threaddump_mi.jsp?live=true如这里物料反分配卡顿:堆栈信息显示:分析堆栈信息可知:卡顿的点是因为物料数据有下游业务方引用校验卡顿了。卡顿在了com.kingdee.eas.scm.common.app.bizHasDeal.SCMMaterialBizHasDeal.checkHasDeal和com.kingdee.eas.scm.im.inv.app.InvMaterialBizHasDeal.checkHasDeal。如何找到对应正确的卡顿堆栈信息:可在浏览器搜索关键字,大部分情况下,物料卡顿搜索“MaterialControllerBean”;供应商搜索”SupplierControllerBean”;客户卡顿搜索”CustomerControllerBean”。三,解决方案1),有效解决方案:减少单次操作选择的数据条数,可以变通使用查询条件减少单次全选的数据量,如可以根据基础数据的编码、名称、分类等字段上的规律进行过滤查询加载