zoukankan      html  css  js  c++  java
  • PHP性能优化

    一.PHP语言级性能优化
    1.优化点:少写代码,多用PHP自身能力
    1.好方法:多用PHP内置变量,常量,函数
    2.shuffle() 函数把数组中的元素按随机顺序重新排列
    3.array_merge() 函数把一个或多个数组合并为一个数组。
      提示:您可以向函数输入一个或者多个数组。
      注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。






    2.优化点:PHP内置函数的性能优劣


    1.好的建议:多去了解PHP内置函数的时间复杂度
    2.array_key_exists() 函数检查某个数组中是否存在指定的键名,如果键名存在则返回 true,如果键名不存在则返回 false。




    3.优化点:尽可能减少使用魔法函数
    4.优化点:禁用错误抑制符@
    5.优化点:合理使用内存
    好的建议:
    1.利用unset()及时释放不使用的内存(注:unset出现注销不掉的情况)
    6.优化点:尽量少用正则表达式
    好的建议:
    1.利用字符串函数,实现相同逻辑


    7.优化点:避免在循环内进行计算
    循环内的计算式会被重复计算


    $str="hello world";
    for(var i=0;i<strlen($str);i++){
    //do something
    }


    每次循环时都会计算strlen的长度,增加了时间


    好的建议:将计算的长度放在循环之外


    $str="hello world";
    $strlen=strlen($str);
    for(var i=;i<$strlen;i++){
    //dosomething
    }
    8.减少计算密集型业务
    9.务必使用带引号字符串作键值
    情况描述:PHP会将没有带引号的键值当做常量,产生查找常量的开销


    好的建议:严格使用带引号的值


    二.PHP周边性能优化

    1.减少文件类的操作
    2.优化网络请求
    a)设置超时时间
    1.连接超时 200ms
    2.读超时   800ms
    3.写超时   500ms


    b)将串行请求并行化
    1.使用curl_multi_*()
    2.使用swoole扩展


    3.压缩PHP接口输出----使用Gzip
    4.PHP缓存复用
    5.重叠时间窗口

  • 相关阅读:
    第一次随笔
    SDN第二次上机作业
    SDN第二次作业
    个人作业——软件产品案例分析
    SDN第一次上机作业
    SDN第一次作业
    个人技术博客(1/2)android布局技巧
    个人技术博客(α)
    团队作业——随堂小测(同学录)
    Alpha冲刺报告(2/12)(麻瓜制造者)
  • 原文地址:https://www.cnblogs.com/chaofei/p/7688514.html
Copyright © 2011-2022 走看看