php性能优化

    xiaoxiao2022-07-06  202

    php流程

    php语句=》(sender底层)=》sender语法=》(解析)=》opcodes=》(执行)=》输出

     

    1、ab 命令  压力测试

    yum -y install httpd-tools

    ab -n100 -c10 http://www.baidu.com/

     

     

    XHprof PHP性能测试工具

    linux 安装xhprof 自己可以在网上找个教程看看,

    php --ri xhprof 检测命令

     

    2、尽量使用内置函数

    语法少,因为是内置的,易于理解

     

    3、内置函数之间的性能选择

    不同的内置函数之间,用法不同,速度也不同,要根据业务的需求选择合适的内置函数

    此时可以使用 time php a.php  查看php命令执行时间,主要看user

     

    4、减少只用魔法函数,如__get

     

     

    5、少用@错误抑制符

    懒人用法,抑制错误输出,会增加opcodes

     

    6、合理的使用内存,释放内存

    例如使用unset ,close,需要保持长时间的,可存于内存中

     

    7、尽量少的使用正则表达式

     

    8、避免在循环内做运算

    例如

    //这个for循环,每循环一次就要strlen()一次,明显不高效;

    $str=hello world;

    for($i=0l$<strlen($str);$i++)

    {

    // do something

    }

    //这样写,才显得高效

    $str=hello world;

    $strlen=strlen($str);

    for($i=0;$i<$strlen;$i++)

    {

    //do somethig

    }

     

    9、PHP不适合在大数据运算

    是由语言特性决定的,适合在Webserver与后端服务,UI呈现

     

    10、减少文件类操作

    读写内存(运行内存)<< 读写数据库 < 读写磁盘(硬盘)<读写网咯数据

     

    原因: 1、php是在运行内存中运行的,、

    写入数据库实际是写入内盘后再写入数据库简单数据的数据库操作要远低于读磁盘(实测所得)网络数据有网络延迟的可能

     

    优化网络请求 设置超时时间

    将串行请求并行化

    a、使用curl_multi_*()

    b、使用swoole扩展(重点)

    最新回复(0)