php 写操作数据性能对比

无意间看到这篇文章PHP共享内存使用场景及注意点,自己跑了把性能

 

$str = '123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789';

<?php
$str = '123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789';

$f = fopen('shmop.txt', 'r');
$beginTime = microtime(1);
for($i=0; $i<=100000; $i++){
    fread($f, 100);
}
fclose($f);
$endTime = microtime(1);
$time = $endTime-$beginTime;
echo "file  $time\n";

$redis = new Redis();
$redis->pconnect('127.0.0.1', 6379);
$redisKey = 'shmopTest';
$beginTime = microtime(1);
for($i=0; $i<=100000; $i++){
    $redis->get($redisKey);
//    $redis->setex($redisKey,600,$str);
}
$redis->close();
$endTime = microtime(1);
$time = $endTime-$beginTime;
echo "redis  $time\n";


$key = ftok(__FILE__, 'h');
$mode = 'c';
$permissions = 0644;
$size = 1024;
$beginTime = microtime(1);
$shmid = shmop_open($key, $mode, $permissions, $size);
for($i=0; $i<=100000; $i++){
//    shmop_write($shmid, "Hello World!", 0);
    shmop_read($shmid, 0, 100);
}
shmop_delete($shmid);
shmop_close($shmid);
$endTime = microtime(1);
$time = $endTime-$beginTime;
echo "shmop  $time\n";
写入时间对比:
file 0.77474498748779
redis 14.926705121994
shmop 0.070791006088257

读取时间对比:
file 0.15014791488647
redis 14.551459789276
shmop 0.075877904891968

Posted in : php


发表评论

电子邮件地址不会被公开。 必填项已用*标注