大用户数量加载慢分析
问题描述 打开项目概览/工作项列表/附件预览时。感觉卡顿
问题根因 成员数量太多,取了不需要的组织成员数据 使用了性能低下的方法 待补充
故障排查过程 通过工作项列表,录下的用户的performance图
这两段部分为取了全量的team member和org member。分别都是2s左右,其中后半部分orgmember在大部分界面是不需要使用的,可以不获取。但目前的获取阻塞了后续的渲染。
这两段为取完了数据后,前端将数据存在内存时所执行的方法。可以看到这两个位置主要对应的全都是js在执行。并且可以看下面的细节发现主要都是执行normalize的方法。根据以往的经验,这里可以从2s缩减到300ms左右。
该位置的info接口耗时5s,但看图得知同时有js在进行大量处理。
目前尚不能确定是否是因为js的执行阻塞了请求,导致请求变慢。
因为是保存的文件,需要后续再确定对应执行的代码是否有性能问题。
故障修复方法
- 除了组织成员管理界面以外,不获取组织成员(可优化时间:请求时间2s,处理对应数据时间3s)
- 重写处理team member的代码,提升优化速度(可优化时间:1.5s)
- 作为性能问题负责人,希望修改配置后不获取全量数据,以提升修改时的性能体验
- 工作项列表分页预取数量减少到50,以提升首次加载的性能
后续改进 #183076 分析 info 接口的性能优化点
参考资料
编辑 (opens new window)
上次更新: 2021/08/12, 14:18:30