-
PHP性能瓶颈解决方法
性能解决涉及到的扩展
http://pecl.php.net/packages.php?catpid=3&catname=Caching
查看全部 -
视频中的例子只能表明 魔术方法获取私有属性 和 公有属性直接访问 之间效率的差别,而不能说明魔术方法和普通方法之间的效率差别。
class test { private $var = "123"; public function getValue($varname) { return $this->$varname; } } $i = 0; while ($i < 10000) { $i++; $test = new test(); echo $test->getValue('var'); }
测试之后的执行时间为:0.015、0.000、0.031这几个时间
class test { private $var = "123"; public function __get($varname) { return $this->$varname; } } $i = 0; while ($i < 10000) { $i++; $test = new test(); echo $test->var; }
测试之后的执行时间也为:0.015、0.000、0.031这几个时间
或许这样更具有说服力。但经测试,这样两种方法的时间效率基本没有差别。都是0.015、0.000、0.031这几个时间
可能执行的时间也和php版本和php环境相关,因为我测试public属性直接访问的时候显示的执行时间也基本和魔术方法一样。
查看全部 -
php性能问题的解决方向:
查看全部 -
php性能瓶颈解决方法:
查看全部 -
php性能分析工具
查看全部 -
php性能分析工具:xhprof
查看全部 -
vim时查找字符串:
"/"+"要查找的字符串"
小写的n查找下一处
大写的N或者shift+n查找上一处
查看全部 -
查找当前目录下的指定字符串:
grep '要查找的字符串' ./ -r
查看全部 -
php --ri 扩展名 查看php扩展的版本信息
查看全部 -
重叠时间窗口思想(php并行处理)方案:
1.使用中间件,所有请求都请求中间件,由中间件来完成
2.使用swoole
3.Yar方案
4.开启多个子进程
查看全部 -
缓存重复计算内容
查看全部 -
如何优化网络请求:
设置超时时间
a) 连接超时 200ms
b) 读超时 800ms
c) 写超时 500ms
将串行请求并行化
a) 使用curl_multi_*()
b) 使用swoole扩展
查看全部 -
减少文件类操作
常见php场景的开销次序:
读写内存 << 读写数据库 < 读写磁盘 < 读写网络数据 (后面三种都是基于硬盘的)
查看全部 -
影响php性能的周边:
Linux运行环境
文件存储(磁盘)
数据库
缓存(硬件的内存、软件的memcache等缓存)
网络
查看全部 -
php语言特性决定php不适合做大数据量运算,适合衔接Webserver与后端服务、UI呈现
查看全部
举报