ホームページ  >  記事  >  バックエンド開発  >  Little Ant の Memcache 学習メモ - PHP の Memcache 操作 (2)

Little Ant の Memcache 学習メモ - PHP の Memcache 操作 (2)

WBOY
WBOYオリジナル
2016-06-20 12:48:44765ブラウズ

前の記事では、$mem->set(); を学習するときに、3 番目のパラメータ MEMCACHE_COMPRESSED を圧縮に使用するように記述しました。

Memcache は独立した機関であり、C/S 構造を持っています。 memcache がいっぱいの場合、LRU アルゴリズムはアクセスされていない最も古いものを削除します。

Memcache の配布 ここが重要なポイントです

2 番目の部分では、connect メソッドが addserver() に変更され、memcache サーバーが接続プールに追加されます。

例:

$mem    ->    new Memcache();$mem    ->    addServer('127.0.0.1',11211);    //增加链接池$mem    ->    addServer('127.0.0.1',9999);     //增加链接池   $mem    ->    get($key);

memcached は「分散」キャッシュ サーバーですが、サーバー側に分散機能はありません。

各 memcache は情報共有のために相互に通信しません。各 memcache サービスのデータは同期されません。

そして、どの memcached にどのようなデータを入れるかは、クライアントの mem オブジェクトによって決まります。

addServer を実行すると、すぐに mem サービスに接続されるのではなく、計算とハッシュ化の後にどの mem サービスに接続するかが決定されるため、多数のサービスが接続プールに追加されると、オーバーヘッドが発生しないようにします。

memcache の詳細を学習します

ライフサイクル。投入した時点から時間が経過し、時間が経過すると自動的に消滅します。 Memcache は以下の場合に破棄されます。一つ、時間切れです。 2. memcache を再起動します。 3. サーバーを再起動します。

memcache にセッションを保存する方法

php.ini 設定ファイルを変更します

session.save_handler=user 3 つのオプションがあります。ユーザーは、カスタム ファイルがデータベースに保存されることを意味しますmemcache をメモリに保存したファイルに

以下のように変更します。 session.save_handler を memcache

に変更します。 session.save_path="tcp://127.0.0.1,11211"

2 . apache を再起動します

注: セッション データが memcache に保存されている場合は、session_id をキー値として追加する必要があります。

将来大規模なポータル Web サイトを構築する場合は、セッションを memcache に書き込む必要があります。 (強く推奨)

php.ini ファイルを変更できない場合は、関数を使用して php.ini の設定を変更できます。次の 2 つの文をスクリプトのフロントエンドに書き込むことができます。

ini_set("session.sava_handler","memcache");ini_set("session.save_path","tcp://127.0.0.1:9999");     //函数的参数都是以减值对的形式存入

ini_set() は非常に強力で、php.ini 内の任意の値を変更できます。

セーフ モード モードについて説明します

これらの最大の違いは、セーフ モードをオンにすると、サーバー上のファイルに対する操作がほとんど無効になることです。

ini_set() はスクリプトでのみ機能し、他のファイルでは機能しません。

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