开发的页面卡顿、慢?一文教你如何进行页面性能优化
有很多时候我们会遇到开发的页面十分卡顿、运行非常慢的情况,如何将页面的性能进行优化呢?本文就来教你。
当页面出现加载过慢或者卡顿的情况时,可从以下几点着手排查:
目录
SQL查询数量过多
SQL查询耗时过久
页面资源加载耗时
网络资源
WEB服务器
SQL查询耗时
SQL查询数量过多
调出开发者工具(可以使用F12快捷键调出),在调试页面查看页面的SQL(querydata)
请求数量是否过多,如过多可考虑优化数据加工,将多个加工处理到同一个加工中,减少SQL请求数量。
检查是否执行了不必要的SQL,其中数据界面没使用到的SQL需要定位分析原因。
SQL查询耗时过久
查看SQL请求中Stalled
时间,如过长可检查下网络情况。
查看SQL请求中TTFB
时间,如过长可针对该请求对应的数据模型进行优化,具体可为该模型添加索引或者设置预览数据,可参考文档 数据仓库性能优化。
查看SQL请求中的SQL语句,可复制到数据源中进行执行分析优化。
页面资源加载耗时
若是页面资源加载过慢,可从以下几点排查:
- 图片资源加载过慢:请检查静态资源是否过大,图片一般不要超过300K,建议将图片资源压缩后再上传, 压缩网站地址(opens new window)
- 如有二次开发脚本:请检查
js类资源
加载情况,若过慢可以排查脚本中是否import了非必要的类或方法 - 如Web层做了代理:建议在代理层做 静态资源的缓存,实现页面请求的动静分离,静态资源要走缓存后,加载后下次不会在从服务器再加载
网络资源
查看网络资源能否正常访问,可从以下几点排查:
- 查看代理是否正常
- 检查防火墙,可使用不经过防火墙的IP访问BI系统进行排查
- 在本地和服务器抓包,分析网络异常位置,再做进一步处理
WEB服务器
查看WEB服务器性能,另外日志级别设置也会影响系统性能:
- 查看或监控
内存
、CPU
使用情况,如内存
、CPU
使用率过高,可能是有任务阻塞或高并发访问,可分析在线用户数、线程堆栈,若是高并发,可扩展集群 - 检查日志文件
catalina.out
,如产生大量日志文件,可查看日志级别设置,日志级别设置为TRACE
、DEBUG
可能会严重影响系统性能,建议修改为INFO
提示:
- CPU、内存等变化会导致 产品许可失效,请确认后处理
- 若日志级别为DEBUG,会产生大量日志,影响系统性能
用户昵称:: 主打低代码的同时,也没完全舍弃代码,更好的兼容!
山川软件: 有的呢?你可以看看我们的示例demo:https://demo.succbi.com/demo
山川软件: 感兴趣也可以联系我们,获取免费的CRM自行搭建。搭建CRM你也可以!
山川软件: 有的呢, 参考文档地址:https://docs.succbi.com/dash/data/reference-line/#reference-point 参考示例地址:https://demo.succbi.com/demo/%E6%9F%B1%E5%BD%A2%E5%9B%BE/play
山川软件: 中间件支持:Tomcat、BES、东方通(TongWeb)、Websphere,想了解具体的内容可以看一下文档:https://docs.succbi.com/devops/install/tomcat/