ホームページ > バックエンド開発 > PHPチュートリアル > 同じサーバー上で Memcached よりも効率的にキャッシュ APC を使用するデモ コード_PHP チュートリアル

同じサーバー上で Memcached よりも効率的にキャッシュ APC を使用するデモ コード_PHP チュートリアル

WBOY
リリース: 2016-07-21 15:40:54
オリジナル
904 人が閲覧しました

复制代码代码如下:

$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...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート