`
icarusli
  • 浏览: 524077 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

php include 和io流的效率

 
阅读更多

之前看了,平凡的世界大大的一篇文章 <a href="http://www.ccvita.com/">传送门</a> ,php文件缓存性能测试。很不以为然,include怎么会比io流慢了 ,就算加上序列化,按照常理,include也会稍快一些,但是事实却是是如此! 代码如下

测试io流+序列化

function read_cache($filename) {
        if($datas = file_get_contents($filename)){
            return $datas;
        }
}
$t1 = gettimeofday();

for ($i = 0; $i < 10000; $i++){
    $x = read_cache("CacheTest_SerializeData.php");
    $x_r = unserialize($x);
}

$t2 = gettimeofday();

echo ($t2['sec'] - $t1['sec']) * 1000 + ($t2['usec'] - $t1['usec']) / 1000 . "\n";
测试include

$t1 = gettimeofday();

for ($i = 0; $i < 10000; $i++){
    include("CacheTest_IncludeData.php");
}

$t2 = gettimeofday();

echo ($t2['sec'] - $t1['sec']) * 1000 + ($t2['usec'] - $t1['usec']) / 1000 . "\n";

结果时间相差1s 但是这中间有一个问题 序列化字符串长度有限制,是基于php数组的限制,所以大存放大量文章内容时这种io+序列化可能达不到预期的需求

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics