ホームページ  >  記事  >  バックエンド開発  >  PHPでmemcacheモジュールをロードするサンプルコードの詳細説明(写真)

PHPでmemcacheモジュールをロードするサンプルコードの詳細説明(写真)

黄舟
黄舟オリジナル
2017-03-28 09:19:301336ブラウズ

memcache

定義

memcacheは、分散型高速キャッシュシステムです
現在、特に一部の大規模な

ワークフローにおいて、Webサイトのアクセス速度を向上させるために多くのWebサイトで使用されています

1. データが存在するかどうかを最初に確認します。 memcache にある場合は、直接返します
2. memcache にない場合は、データベースを確認し、コピーを memcache にキャッシュします。これにより、読み取り速度が大幅に向上します。

アプリケーションと機能

1. Web ページまたはデータベースのキャッシュに使用
2. セッションの共有に使用可能
3. 小規模ながら大規模なデータ変更に適しています (Weibo ファン +1 など)
4.メモリ内にデータを永続化することはできません

キャッシュ最適化ルール: 28 原則

20%: ホットデータ、頻繁にアクセスされるデータ。キャッシュとして使用され、メモリに保存されます
80%: 基本的に変更されていないデータ、ソリッド ステート ドライブに保存されます

phpは、memcacheモジュールをロードします

現在のPHP環境を検出します

vim ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/lnmp/mysql/bin/:/usr/local/lnmp/php/bin

、またはソフトリンク

[root@server11 bin]# ln -s /usr/local/lnmp/php/bin /usr/local/bin/

を作成します。コンパイル

tar zxf memcache-2.2.5.tgz cd memcache-2.2.5
phpize    准备预编译环境

PHPでmemcacheモジュールをロードするサンプルコードの詳細説明(写真)

./configure make && make install

phpの実行パスがソースパッケージのパスであることを確認してください

 [root@server11 memcache-2.2.5]# which php /usr/local/lnmp/php/bin/php
cd /usr/local/lnmp/php/etc/
vim php.ini    记住是.
863         extension=memcache.so
/etc/init.d/php-fpm start

Check

[root@server11 etc]# php -m |grep memcache

PHPでmemcacheモジュールをロードするサンプルコードの詳細説明(写真)

rpm -qa |grep phpそこにあることを確認してくださいrpm パッケージの干渉はありません

バックエンドのインストール設定

yum install memcached -y
/etc/init.d/memcached start

リスニングポート netstat -antlpue

udp        
0      
0 0.0.0.0:11211               
0.0.0.0:*                               
498        
10940      
3706/memcached

memcached データベースにアクセス

yum install telnet -y 
telnet localhost 11211
set name 0 0 6
westos
STORED
get name
VALUE name 0 6
westos
END
delete name
DELETED
get name 
END

監視ページを書き込む

cd memcache-2.2.5

cp memcache.php /ユーザー/ local/nginx/html/

vim memcache.php

23 define('ADMIN_PASSWORD','westos');      // Admin Password
28 $MEMCACHE_SERVERS[] = ''; // add more as an array
29 $MEMCACHE_SERVERS[] = 'mymemcache-server2:11211'; // add more as an arra    y

テストページを書く

vim test.php

<?php
$memcache = new Memcache;
$memcache->connect(&#39;127.0.0.1&#39;, 11211) or die ("Could not connect");
$version = $memcache->getVersion();
echo "Server&#39;s version: ".$version."\n";
$tmp_object = new stdClass;
$tmp_object->str_attr = &#39;test&#39;;
$tmp_object->int_attr = 123;
$memcache->set(&#39;key&#39;, $tmp_object, false, 10) or die ("Failed to save data at the
server");
echo "Store data in the cache (data will expire in 10 seconds)\n";
$get_result = $memcache->get(&#39;key&#39;);
echo "Data from the cache:\n";
var_dump($get_result);
?>

nginxを起動

nginx

Check

ブラウザでアクセス:

1。 8.11/memcache .php キャッシュ ヒット率の監視

2. 172.25.88.11/test.php

は常に更新されており、キャッシュ ヒット率 (ヒット) がどんどん大きくなっていることがわかります

PHPでmemcacheモジュールをロードするサンプルコードの詳細説明(写真)

PHPでmemcacheモジュールをロードするサンプルコードの詳細説明(写真)

以上がPHPでmemcacheモジュールをロードするサンプルコードの詳細説明(写真)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。