問題タブ [libmemcache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
7765 参照

php - Memcache コンシステント ハッシュ、クラスター、PHP コード、Ketama など

私は終日、PHP を使用して Memcache を理解し、コーディングしようとしましたが、いくつかの点で混乱しています。私は多くの記事を読み、これに関連するほぼすべての SO の質問を調べましたが、正確な答えを見つけることができませんでした。

1) PHP で Consistent Hashed Key を作成するコードは何ですか? どのライブラリをインストールする必要があり、本当に何をする必要があるのか​​? 良い記事はありますか?

2) コンシステント ハッシュ キーを正常に保存したとします。コンシステント ハッシュ キーなどを使用している場合でも、いずれかのサーバーがダウンしているか、新しいサーバーを追加した場合、違いはありますか?

3) Memcached::addServer() の代わりに Memcached::addServers() を使用すると、http://ru.php.net/manual/en/memcached.addserver.php に記載されているように、Consistent Hashing の場合に違いが生じます。そうではなく、どういう意味ですか?

4) コンシステント ハッシュには上記のコードを使用するだけで十分であり、サーバーを追加/削除してもキーに違いはありませんか?

5) ケタマ図書館とは?Memcached::DISTRIBUTION_CONSISTENT がより適切に機能する場合、なぜそれを使用するのでしょうか? http://www.last.fm/user/RJ/journal/2007/04/10/rz_libketama_-_a_consistent_hashing_algo_for_memcache_clientsに従う

6) なんらかの方法でキーをハッシュする必要がありますか、それとも単にキーを提供し、残りは Memcached に処理させる必要がありますか?

できるだけ早く私の実稼働環境を理解して実装するために、あなたの本当のサポートが必要です。あなたの答えは、何をより良くコーディングする必要があるかを理解するのに役立ちます。

0 投票する
1 に答える
376 参照

php - 「php_network_getaddresses: getaddrinfo に失敗しました」の意味は何ですか?

「php_network_getaddresses: getaddrinfo に失敗しました」の意味は何ですか?

memcache を使用しているときに、「"php_network_getaddresses: getaddrinfo failed" の意味は何ですか?」というメッセージが表示されました。memcache のメソッドを実行すると表示されます。

0 投票する
1 に答える
951 参照

mysql - memcache_functions_mysql UDF を使用して memcache と mysql を操作する

次のパッケージをインストールしました -

  1. libevent-2.0.21
  2. memcached-1.4.17
  3. libmemcached-0.34
  4. memcached_functions_mysql_1.1

上記のすべてが正常にインストールされました。ldconfig -v コマンドの出力 (libmemcached ライブラリが含まれていることを示す部分) は次のとおりです。

しかし、memcache_functions に同梱されている install_functions.sql を使用して UDF を mysql にロードしようとすると、次のエラーがスローされます。

また、プラグイン ディレクトリの内容は次のとおりです。

0 投票する
2 に答える
4101 参照

mamp - MAMP Mac OX X 10.9 に memcache PECL 拡張機能をインストールする

10.9 (Mavericks) を実行している Mac の MAMP に PECL memcache 拡張機能をインストールしようとしています。MAMP 3.0 にアップグレードしたばかりで、再インストールする必要があります。

ターミナルで実行sudo pecl install memcacheしましたが、パスが詰まっているようで、 が見つかりませんphp.h。に見えるようです/Applications/MAMP/bin/php/php5.5.10/include/php/main/php.h。は/Applications/MAMP/bin/php/php5.5.10/include/存在しません。

これが私の端末ログです。他の誰かがこの問題を抱えていますか?

0 投票する
0 に答える
188 参照

php - PHPでmemcacheでsetOption関数を使用する

Memcacheサーバーに接続して遊んでいるために、memcache拡張機能を使用しています。しかし今、このライブラリには存在しないが、 Memcached::setOptionという Memcached に存在する関数を使用したいと考えています。

コード全体を Memcache から Memcached に移動するのは非常に困難です。

どこでもコードを変更せずに setOption 関数の機能を使用できる方法はありますか?

0 投票する
1 に答える
948 参照

php - Mavericks に memcache をインストールするには? (MAMP)

マシンに MAMP があり、プロジェクトの 1 つがFatal error: Class 'Memcache' not found.

appstore からX-Codeをインストールし、 libeventmemcachedlibmemcachedhomebrewでインストールしました。

それで..

共有拡張機能のインストール: /usr/lib/php/extensions/no-debug-non-zts-20100525/

その後、memcached.so と memcache.so を extension_folder にコピーしました。

/Applications/MAMP/bin/php/php5.5.10/lib/php/extensions/no-debug-non-zts-20121212/

私のphp.iniにextension = memcached.soを追加しました。

それでも致命的なエラーが発生します..何が問題なのですか?

0 投票する
2 に答える
15247 参照

php - PHP セッションが memcache に保存されない

Amazon Linux を使用して、AWS で php 5.4 を使用してアプリケーションを実行します。

PHP のバージョンは PHP 5.4.28 です。AWS リポジトリからインストールされた memcache lib は、php54-pecl-memcache-3.0.8-1.11.amzn1.x86_64 です。

PHP が /etc/php.ini を使用していることを確認しました。

設定は、memcache を使用する必要があることを示しています。

ボックスからエンドポイントとポートに telnet で接続して適切に接続できるため、インスタンスは memcached サーバーに接続できます。

私たちが試したこと:

  • tcp:// を php.ini ファイルから削除しましたが、違いはありませんでした。セッションはまだファイルに保存されています。
  • session.save_handler="memcache" から session.save_handler="memcached" に変更しました
  • 変更を加えるたびに、httpd サーバーを停止し、再度開始します。
  • サーバーの再起動も試みました

何を試しても、セッションはディスク上の /var/lib/php/sessions に保存されます。不足しているものはありますか、それとも 5.4 または AWS の既知の問題ですか?

0 投票する
0 に答える
1415 参照

php - Memcached / Memcache キーが期限切れにならない

Memcached では期待どおりにデータが期限切れになるようですが、キー自体は期限切れになりません。値が null になった後もキーが残っているのはなぜですか? このコードを実行すると:

http://docs.phalconphp.com/en/latest/api/Phalcon_Cache_Backend_Memcache.htmlから取得

キー $myNewRandomKey の下に配列を正常に保存できます。次に、30 秒のタイムアウトが経過した後に次のコードを実行します。

また、データは NULL ですが、キーがまだ存在していることを確認してください。ここでは、タイムアウトが期限切れになる前に入力されました。これは私には半分だけ正しいように思えます。キーもクリアされているはずです。

ただし、 $cache->delete($myNewRandomKey); を実行すると キーは完全に消去されます。一貫性がない!

結論: キーが期限切れにならない場合、または memcached にバグがある場合、別の種類の頭痛 (システム管理者の頭痛) が発生するまで、キーは時間の経過とともに成長し続けますか?

これらはバージョンですが、それが問題とは無関係であり、私の期待が間違っていることを願っています.

すべてのSO'ersに乾杯!

SL