web-dev-qa-db-ja.com

node.jsからmemcachedにアクセスする簡単な方法

Node.jsをmemcachedに直接接続するための適切なドライバーまたはネイティブ実装があるかどうかを知りたいです。

28
Ezequiel

次の検索を使用します https://npmjs.org/

Npmがない場合は、インストールしてください。

CLIで:

npm検索memcache

5つのモジュールを表示します。

これは最も人気があるようです: https://github.com/3rd-Eden/node-memcached

32
Josh

これが、node-memcachedモジュールをいくつか使用した私の経験です

  1. rd-Eden/node-memcached 。プロジェクトは安定していないようで、BLOBの保存にバグがあります(詳細は issue#46を参照 および issue#48 )。さらに、コードが非常に読みにくい(したがって更新が難しい)ことがわかったので、プロジェクトで使用することはお勧めしません。

  2. elbart/node-memcache は正常に機能しているようですが、ソースコードの記述方法には満足していますが、BLOBの格納はサポートされていません( fork があります)能力を追加すると言われていますが、私はそれをテストしていません)

  3. overclocked/mc は私がとても好きなものです。これは、BLOBを格納できる唯一のものです。それは素晴らしいドキュメントがあり、そのコードは見栄えがよく、使いやすいです。

現在、私は overclocked/mcmy project で使用しており、すべてが正常に動作しているようです。

35

基本的なアイデア。

net = require("net");

var client = net.connect({port: 11211, Host:"localhost"},function() { 
    console.log('connected');

    client.write('stats\r\n');
    //OR other commands + "\r\n"

    client.on('data', function(data) {
        console.log(data.toString());
    });

    client.on('end', function() {
        console.log('data fetched');
    });
});

また、net.createServerを使用して、独自のメモリキャッシュサーバーを作成し、永続的なYOUR CACHE DATA TO MYSQLなどの追加要件をサポートできます。

11
Soyoes