tp5优化api速度
Posted 风吹头蛋凉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tp5优化api速度相关的知识,希望对你有一定的参考价值。
tp5如何优化api速度?
前言
上个月用tp5写了个项目,写完就没管了,突然有一天老板说,有个接口太慢了,点开要好久,我说好,二话不说postman一发,好吗这个接口耗时一秒多,忍不了,于是开始寻找问题所在。
如何找到问题?
1.开启config中的app_debug,和database_debug.
由于是通过tp5写的框架,以前不懂tp5中config文件的app_debug,有什么用,文档一看,可以打印出各种函数所完成的时间
2.查看日志文件
一般只要开启了,就会有一个runtime文件,打开里面的log文件,里面详细记录了耗时
找到接口请求的数据,看是php程序耗时久,还是查询数据库耗时久,不同的问题,对应不同的解决方案。
3.解决方案
- 如果是程序问题,看看是不是写了死循环,什么的,不过一般不会是这种问题,因为程序一旦出现问题就会,服务器就会出现响应超时,卡死的情况。
- 如果是数据查询慢问题,就在查询量较多的字段加索引,把查询较多的数据放到redis
- 如果是代码不良导致加锁了,尽量优化索引或sql语句,让锁的级别最小(到行),一般来说到行差不多了。如果是单个sql跑慢了,需要分析是不是索引没加或者sql选的索引错了,索引该加的就加了,该force index也加了。
- 把非核心的业务进行异步化操作。记住如果代码层面是非核心业务,但是会影响用户感知,需要慎重决定是否异步。
总结
遇到问题不要慌,对症下药,找到问题,寻找解决方案,解决问题,事后总结,一步一步,问题总会解决的。
以上是关于tp5优化api速度的主要内容,如果未能解决你的问题,请参考以下文章
网站url路径优化方法完全讲解 (url优化基于tp5API接口开发)
网站url路径优化方法完全讲解 (url优化基于tp5API接口开发)
黄啊码什么是ElasticSearch?它会替代MySQL成为主流吗?如何优化?TP5如何接入ElasticSearch?