ホームページ  >  記事  >  バックエンド開発  >  Memcached PHP モジュール memcache と memcached の差異分析

Memcached PHP モジュール memcache と memcached の差異分析

WBOY
WBOYオリジナル
2016-07-29 08:45:321028ブラウズ

1. 現在、ほとんどの PHP 環境では d のない memcache バージョンが使用されています。このバージョンは以前にリリースされたもので、完全に PHP フレームワーク内で開発されたネイティブ バージョンです。 d に対応する memcached は libmemcached に基づいているため、相対的に言えば、memcached バージョンの方がより完全な機能を備えています。
memcache:http://cn2.php.net/manual/en/book.memcache.php
memcached:http://cn2.php.net/manual/en/book.memcached.php
2.Memcache はネイティブですこれは、OO インターフェイスと非 OO インターフェイスの両方の共存をサポートするために実装されています。 Memcached は libmemcached を使用し、OO インターフェイスのみをサポートします。
3. memcached のもう 1 つの非常に賞賛すべき点は、フラグが動作中に設定されず、統一された setOption() があることです。 Memcached は、memcached プロトコルの多くを実装します。
4.memcached はバイナリ プロトコルをサポートしていますが、memcache はサポートしていません。これは、memcached のパフォーマンスが高いことを意味します。ただし、me​​mcached は現在、長時間接続をサポートしていません。
PHP クライアント拡張機能 memcache と memcached を比較する表が以下にあります
http://code.google.com/p/memcached/wiki/PHPClientComparison
誰もがより懸念しているもう 1 つの点は、使用されているアルゴリズムです。 「一貫性のあるハッシュ アルゴリズム」は、ストレージ ノードの追加または削除時に memcached に保存されているデータへの影響が少ないアルゴリズムであることは誰もが知っています。このアルゴリズムは PHP の両方の拡張ライブラリで使用できますが、設定方法が異なります。
Memcache
php.ini を変更して次を追加します:
[Memcache]
Memcache.allow_failover = 1


Memcache.hash_strategy =consistent
Memcache.hash_function =crc32


またはPHP の ini_ セットメソッド:
Ini_set('memcache.hash_strategy','standard');
Ini_set('memcache.hash_function','crc32');
Memcached
$mem = new memcached(); ,Memcached::DISTRIBUTION_CONSISTENT);
$mem->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE,true);
以上、Memcached php モジュール memcache と memcached の違いの分析を紹介しました。Memcached の内容も含めて、PHP チュートリアルに興味のある友人の参考になれば幸いです。

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