1.监控
对其他接口的调用、数据库读写操作、复杂逻辑操作、foreach循环……进行监控,定位超时的问题所在
2.整理逻辑
-
多线程控制
task、thread……方式,对于可以并行执行的操作,使用多线程,缩短时间
-
减少数据库连接次数
数据库读取操作的合并,减少数据库连接次数
同时要注意,结合程序的可读性、可维护性
-
循环的优化
耗时间的操作,尽量在循环之外一次性获取。避免在循环内,有过多的耗时操作。
如:数据库读取操作(批量读取)、接口获取数据操作(批量获取)
3.增加缓存
页面缓存、redis缓存……方式,针对非重要、实时要求不高、不常变动的数据(数据库数据、接口数据……)添加缓存,加快反应速度
4.数据库优化
对于sql执行速度慢的情况:
- 添加索引
- 数据冗余
- sql批处理
- 表结构优化
- ……
可以提高sql的执行速度