复制代码代码如下:
$memcachehost = 'localhost';
$memcacheport = '11211';
関数 microtime_float(){
list($usec, $sec) =explode(" ", microtime());
return ((float)$usec + (float)$sec);
}
function runtime($t1){
returnnumber_format((microtime_float() - $t1)*1000, 4).'ms';
}
$starttime = microtime_float();
$キャッシュタイム = '30';
echo "init=====".runtime($starttime).'
';
$sql = "SELECT * FROM hx WHERE id = 10006";
$mem_sql_key = md5($sql);
$t1 = microtime_float();
エコー「APC_read======」;
$arrs = apc_fetch($mem_sql_key);
エコー ランタイム($t1).'
';
$t1 = microtime_float();
apc_store($mem_sql_key.'_test', $arrs, $cache_time);
エコー「APC_write======」;
エコー ランタイム($t1).'
';
$t1 = microtime_float();
$mem = 新しい Memcache;
$mem->connect($memcachehost, $memcacheport);
echo "MEM_connet=====".runtime($t1).'
';
$t1 = microtime_float();
$arrs = $mem->get($mem_sql_key);
エコー「MEM_read======」;
エコー ランタイム($t1).'
';
$t1 = microtime_float();
$mem->set($mem_sql_key.'_test',$arrs,0,$cache_time);
エコー「MEM_write=====」;
エコー ランタイム($t1).'
';
?>
は、この句 SQL の結果を apc と memcached に保存してから、コンピュータの Windows 上の結果:
init=====0.0341ms
APC_read== ===0.0439ms
APC_write=====0.0920ms
MEM_connet=====11.0571ms
MEM_read=====0.2630ms
MEM_write=====0.2270ms
在服务器上linux上結果:
init=====0.0131ms
APC_read=====0.0520ms
APC_write=====0.0489ms
MEM_connet=====0.0501ms
MEM_read=====0.1030ms
MEM_write=== == 0.0801ms
もちろん、リバース ブラシには異なる値が含まれる可能性がありますが、ここでは単に平均値を取得しただけです。 memcache_connect の時間を計算すると、書き込み速度 apc はすべて、つまり 2 倍になります。ウェブサイトの評価モードが非常に短い時間であれば、すべての機能が 1 台のサーバー上で実行できるため、memcached を考慮せずに、最初に APC が選択されます。さらに、サーバーは memcached を使用し、内部ネットワークを使用するのが最適です。 2 倍のバンド流量。
http://www.bkjia.com/PHPjc/321268.html
www.bkjia.com
本当
http://www.bkjia.com/PHPjc/321268.html
技術記事
代案例: ?php $memcachehost = 'localhost'; $memcacheport = '11211'; function microtime_float(){ list($usec, $sec) =explode(" ", microtime()); return ((float)$use...