Easy way for accessing memcached from node.js

Use the search on: https://npmjs.org/

If you don't have npm, install it.

On the cli:

npm search memcache

Brings up 5 modules.

This seems to be the most popular: https://github.com/3rd-Eden/node-memcached


The basic idea.

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');
    });
});

Also you can use net.createServer to make your own memory cache server to support additional requirements such as PERSISTENT YOUR CACHE DATA TO MYSQL.


Here's my experience of using couple of node-memcached modules

  1. 3rd-Eden/node-memcached. The project doesn't seem to be stable and has bugs with storing BLOBS (see issue #46 and issue #48 for details). Moreover I found it's code quite hard to read (and thus hard to update), so I wouldn't suggest using it in your projects.

  2. elbart/node-memcache seems to work fine, and I feel good about the way it's source code is written, but it doesn't support storing BLOBs (there's a fork that is said to add the ability, but I haven't tested it)

  3. overclocked/mc is the one I like a lot. This is the only one that is capable of storing BLOBs. It has nice documentation, its code looks good and it is easy-to-use.

Currently I use overclocked/mc in my project and everything seems to be working fine.