设为首页 收藏本站
查看: 646|回复: 0

[经验分享] PHP对接口执行效率慢的优化

[复制链接]

尚未签到

发表于 2018-12-12 08:21:43 | 显示全部楼层 |阅读模式
  造成执行效率低的原因可以由很多方面找原因

从代码层面,代码质量低,执行效率也会有很大影响的。
从硬件方面,服务器配置低,服务器配置是基础,这个跑不动肯定慢。
从数据量方面,查询数据量过多,sql语句过于繁杂,执行缓慢。
  服务器
  从配置上做提升,对于系统整体的执行效率是相当明显的,这一点没有什么好质疑的,只要有实力,自然就可以多在这方面做提升了。
数据查询:
  这个查询的优化,涉及sql的优化,或者到数据库的优化,下面有几个简单的优化方案。

sql的优化,适当使用链表查询,使用连接(JOIN)来代替子查询,一般大表和多表的情况避免使用JOIN,这种情况下使用JOIN反而达不到简化查询的效果。
sql的优化,查询表数据时精确字段名进行查询,避免不必要的字段查询。
sql的优化,适当使用主外键和索引。
sql的优化,适当使用in查询,适当使用模糊查询。
··········
数据库的优化,字段使用合理的字段类型,另外一个提高效率的方法是在可能的情况下,应该尽量把字段设置为NOTNULL,避免空间浪费。
数据库的优化,合理设计表结构。
··········
  代码优化:
  代码上的优化也是因人而异的,每个人可能编码习惯和风格不同,对于提高代码性能有各自的见解,以下是我的部分看法。
foreach合理使用,尽量少在循环中套用循环,在循环次数过多的情况下,非常耗性能。
循环中,尽量避免数据操作,特别是查询操作,在循环次数过多的情况下,多次调用效率很低,可一次获取数据再拼接。
同理,在循环中,避免配置的多次获取,和time()函数方法的调用,这种一次声明就可以重复使用。
在php中,单引号和双引号是有区别的,作为一种习惯字符串我都用单引号,因为它无需编译,对于效率,可能谈不上差异大小,可能就一点点。
合理利用在php中的函数,像数组函数就非常丰富,要充分利用,一般不要自己去做他本身就支持的函数方法,
可以用上字典的概念,将数组以新索引形式存储起来,我在数据的重组中很常用。
根据场景,合理使用缓存可以减少重复的数据查询,提高效率。
合理拆分功能,比如一个列表查询,并带有详情查看,可以将此处拆成两个接口实现,在需要时获取数据,减少资源浪费。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-650323-1-1.html 上篇帖子: php trait学习 下篇帖子: php插入含有特殊符号数据的处理方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表