php cpu使用率,如何减低php程序的cpu使用率?
xdebug确实挺好能找到你php程序的瓶颈
但是最好在测试机上用xdebug调试,因为xdebug也会影响性能
还有一点当xdebug不用的时候就把他关掉否则他会一直记log直到你的硬盘被占满(我遇到过这个问题)
下面是一些PHP性能优化,需要注意的地方
0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。
PS:在单引号中,PHP不会自动搜寻变量、转义字符等,因此效率上快很多。而一般来说字符串是没有变量的,所以使用双引号会导致性能不佳。
1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。事实上,function、method、static method的速度不会有太大差异。具体可见“PHP函数的实现原理及性能分析【转载】”一文。
2、$row[’id’] 的速度是$row[id]的7倍,不太懂,貌似差异只有后者会先判断id这个宏是否存在,如果不存在则自动转变为字符串。
3、echo 比 print 快,如果使用echo $str1.$str2 就会需要 PHP 引擎首先把所有的变量连接起来,然后在输出,而echo $str1,$str2,PHP 引擎就会按照循序输出他们
4、在执行for循环之前确定最大循环数,不要每循环一次都计算最大值,最好用foreach代替for,这个效率更高,如果考虑到foreach($array as $var)每次拷贝的消耗,可以使用foreach($array as &$var)这样的引用。
5、注销那些不用的变量尤其是大数组,以便释放内存,如果没有记错的话,unset($array)不会立刻释放内存,但随时释放是个好习惯。
6、尽量避免使用__get,__set,__autoload。
7、require_once和include_once需要判重,因此效率上要低,但是5.2版本后效率问题已经基本解决。
8、include文件时尽量使用绝对路径,因为它避免了PHP去include_path里查找文件的速度,解析操作系统路径所需的时间会更少。
9、如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用$_SERVER['REQUEST_TIME']要好于time()。
10、函数代替正则表达式完成相同功能。
11、str_replace函数比preg_replace函数快,但strtr函数的效率是str_replace函数的四倍。
12、如果一个字符串替换函数,可接受数组或字符作为参数,并且参数长度不太长,那么可以考虑额外写一段替换代码,使得每次传递参数是一个字符,而不是只写一行代码接受数组作为查询和替换的参数。
13、使用选择分支语句(译注:即switch case)好于使用多个if,else if语句。
14、用@屏蔽错误消息的做法非常低效,极其低效。
15、打开apache的mod_deflate模块,可以提高网页的浏览速度。
php cpu使用率,如何减低php程序的cpu使用率?相关推荐
- ios android cpu占用率,iPhone-iOS-从应用程序获取CPU使用率
iPhone-iOS-从应用程序获取CPU使用率 有谁知道如何获取应用程序的CPU使用率? 绝对有可能,因为应用商店中有一些可以显示它的应用程序(活动监视器触摸). 3个解决方案 74 votes 更 ...
- php运行cpu利用率低,PHP-如何减低php程序的cpu使用率?
xdebug确实挺好能找到你php程序的瓶颈 但是最好在测试机上用xdebug调试,因为xdebug也会影响性能 还有一点当xdebug不用的时候就把他关掉否则他会一直记log直到你的硬盘被占满(我遇 ...
- java 正则 cpu 100_这六个原因真的可以使Java应用程序的CPU使用率飙升到100%吗?...
点击上方的"代码农户的冥想记录",然后选择"设为明星" 高质量文章,及时交付 问题 1. 无限while循环会导致CPU使用率飙升吗? 2.经常使用Young ...
- java进程cpu使用率高_什么会导致Java应用程序的CPU使用率飙升?
问题 无限循环的while会导致CPU使用率飙升吗? 经常使用Young GC会导致CPU占用率飙升吗? 具有大量线程的应用程序的CPU使用率是否较高? CPU使用率高的应用程序的线程数是多少? 处于 ...
- Java 应用程序的 CPU 使用率飙升原因分析
一. 问题 while 的无限循环是否会导致 CPU 使用率飙升? 频繁的 Young GC 是否会导致 CPU 使用率飙升? 有大量线程的应用程序的 CPU 使用率高吗? CPU 使用率高的应用程序 ...
- window服务器cpu过高的排查_高频面试题:Java程序占用 CPU 过高怎么排查
这个问题可以说是 Java 面试的高频面试题了,有很多面试官都喜欢问这个问题,问题可能是下面这样的. 线上一台服务器 CPU 使用率100% 了,如果你碰到这样的情况,如何排查并找到问题原因? 这就是 ...
- python怎么把cpu占满_如何增加python CPU使用率
我是新手程序员,所以在这里有些迷路. 我编写了一个小的python函数,根据我的搜索区域的运行,这非常耗时,这是预期的. 经过一定的阈值后,我的程序似乎总是丢失大约一百万条记录. Python She ...
- 无盘服务器 cpu占用,顺网科技网维大师程序占CPU资源多的解决过程
顺网客科技的主打网吧产品就是网维大师了,网维大师在网吧和网咖行业用户量比较大,碰到各种奇怪的问题也是蛮多的,今天就来分享一个关于「顺网科技网维大师程序占CPU资源多」问题的解决过程,分享给大家,大家碰 ...
- Java程序占用 CPU 过高怎么排查
Java程序占用 CPU 过高怎么排查 线上一台服务器 CPU 使用率100% 了,如果你碰到这样的情况,如何排查并找到问题原因? 这就是一个套路题,所谓套路题就是有标准的套路解法的,掌握了套路,不仅 ...
最新文章
- C++11中std::condition_variable的使用
- 调用 fork() 两次以避免僵死进程
- 梯度方向直方图和物体检测Histogram of Oriented Gradients and Object Detection
- 交互式计算机图形学总结:第五章 光照和明暗绘制
- 对mysql日志进行操作的总结包括 启用,过期自动删除 等
- java海滩上有一,Java猴子分桃问题--三种算法
- Tomcat配置自签名https
- 海量数据寻找最频繁的数据_寻找数据科学家的“原因”
- 机器学习笔记(十二):聚类
- joomla 3.6 mysql 版本_Joomla是否支持MariaDB数据库?
- 如何使用Syncios Data Recovery直接从 iOS 设备恢复数据?
- 串(串的模式匹配算法BF算法)
- 微信 小程序弹框 简单实现
- 解决窗口桌面管理器内存占用过高,系统更新,核显驱动异常造成的内存泄漏问题。
- Unity实现音频播放器[QQ音乐,网易云等效果]
- 酒店管理系统(功能结构图、流程图)
- 做SEO优化第七步:如何选择网站程序模版?
- 字节跳动java后端一面面经(头条/西瓜视频)
- 类名.class 类名.this 详解
- 标识别,人脸识别等常用数据集