ホームページ  >  記事  >  バックエンド開発  >  [ハイライト] PHP [memcache プロトコル]

[ハイライト] PHP [memcache プロトコル]

WBOY
WBOYオリジナル
2016-06-13 13:13:03692ブラウズ

【概要】PHP【memcacheプロトコル】

インタビュー中に memcache について多くの点について質問されましたが、set と get だけを知っていただけでは十分ではなかったので、再整理しました


基本的な内容

  • メモリキャッシュ ― Memcacheクラス
    • Memcache::add ― キャッシュサーバーにエントリを追加
    • Memcache::addServer ― memcache サーバーを接続プールに追加します
    • Memcache::close ― memcache 接続を閉じます
    • Memcache::connect ― memcached サーバー接続を開きます
    • Memcache::デクリメント ― 要素の値を減らす
    • Memcache::delete ― サーバーから要素を削除
    • Memcache::flush ― 保存されているすべての要素を消去 (削除)
    • Memcache::get ― サーバーから要素を取得します
    • Memcache::getExtendedStats ― サーバープール内のすべてのサーバーのキャッシュ統計
    • Memcache::getServerStatus ― サーバーのオンライン/オフライン状態を取得するために使用されます
    • Memcache::getStats ― サーバー統計の取得
    • Memcache::getVersion ― サーバーのバージョン情報を返す
    • Memcache::increment ― 要素の値を増やす
    • Memcache::pconnect ― サーバーへの永続的な接続を開きます
    • Memcache::replace ― 既存の要素の値を置き換えます
    • Memcache::set ― データをサーバーに保存
    • Memcache::setCompressThreshold ― 大きな値の自動圧縮をオンにします
    • Memcache::setServerParams ― 実行時にサーバーのパラメータとステータスを変更します


実際のシナリオでよく遭遇する状況

---------------------------------

Memcache::add()

存在しない場合は、再度割り当てます


Memcache::addServer()

この方法を使用すると、ネットワーク接続はすぐには確立されず、実際に使用されるまで確立されません。 したがって、多数のサーバーを接続プールに追加しても、それらのサーバーは使用されない可能性があるため、オーバーヘッドは発生しません。


Memcache::decrement()

要素が存在しない場合は

できません 作成します

まず要素の現在の値を数値に変換し、次に を減算します。

新しい要素の値は 0 以上になります


Memcache::flush()

既存の要素をすべて直ちに無効化します

は実際にはリソースを解放せず、すべての要素を無効としてマークするだけなので、使用されていたメモリは新しい要素によって上書きされます。


Memcache::increment()

いいえ キーに対応する要素が存在しない場合は要素を作成します。

指定された要素の値をインクリメントしますvalue

指定された キーの場合 対応する要素は数値型ではないため、数値に変換できません。値は value に変更されます。


Memcache::replace()

キーを渡します 要素を見つけてその値を置き換えます。

キーに対応する要素が存在しない場合、FALSEを返す


------------------------------------------ ------ -


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