使用windbg分析性能问题案例(大循环导致的性能问题)
问题描述
销售订单选择物料回填,1000行超过5分钟。
分析
抓取http数据,发现GetServiceFormState花费了5分钟。
监控数据库端未发现长时间的SQL,SQL执行数量属于合理范围。怀疑问题在应用服务器。
通过windbg进行调试,在执行过程中,每隔1分钟抓取堆栈信息,发现都在执行IsExistEntryField方法。
检查方法代码,发现有一个循环调用
检查方法中相关对象的情况
0:077> !objsize 000002327d8d6ad0 sizeof(000002327d8d6ad0) = 440 (0x1b8) bytes (Kingdee.BOS.JSON.JSONObject)--这个对象只有440字节,不存在问题
但发现JSONArray存储数量达到34636个,在最坏情况,循环将超过了3W次。
查看对象的引用关系
结论
通过上面代码,结合JSONArray的大小,说明问题代码如下。因为大量的循环,导致了性能问题。
使用windbg分析性能问题案例(大循环导致的性能问题)
问题描述销售订单选择物料回填,1000行超过5分钟。分析 抓取http数据,发现GetServiceFormState花费了5分钟。 监...
点击下载文档
本文2024-09-23 01:17:27发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-145000.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
- 鼎捷EAI整合規範文件V3.1.07 (集團).pdf
- 鼎捷OpenAPI應用場景說明_基礎資料.pdf
- 鼎捷OpenAPI應用場景說明_財務管理.pdf
- 鼎捷T100 API設計器使用手冊T100 APIDesigner(V1.0).docx
- 鼎新e-GoB2雲端ERP B2 線上課程E6-2應付票據整批郵寄 領取.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A4使用者建立權限設定.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程C3會計開帳與會計傳票.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程E6-1應付票據.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A5-1進銷存參數設定(初階篇).pdf
- 鼎新e-GoB2雲端ERP B2 線上課程D2帳款開帳與票據開帳.pdf
热门文章