What is memjs?
memjs is a client library for interacting with Memcached servers in Node.js. It provides a simple and efficient way to store, retrieve, and manage cached data using the Memcached protocol.
What are memjs's main functionalities?
Connecting to a Memcached server
This feature allows you to establish a connection to a Memcached server using the memjs client.
const memjs = require('memjs');
const client = memjs.Client.create();
Storing data in the cache
This feature allows you to store data in the Memcached server with an optional expiration time.
client.set('key', 'value', {expires: 10}, function(err, val) {
if (err) throw err;
console.log('Value set successfully');
});
Retrieving data from the cache
This feature allows you to retrieve data from the Memcached server using a key.
client.get('key', function(err, val) {
if (err) throw err;
console.log('Retrieved value:', val.toString());
});
Deleting data from the cache
This feature allows you to delete data from the Memcached server using a key.
client.delete('key', function(err, val) {
if (err) throw err;
console.log('Key deleted successfully');
});
Other packages similar to memjs
memcached
The 'memcached' package is another popular client for interacting with Memcached servers in Node.js. It offers a rich set of features and supports multiple servers, consistent hashing, and more. Compared to memjs, 'memcached' provides more advanced configuration options and is widely used in production environments.
node-memcached
The 'node-memcached' package is a high-performance Memcached client for Node.js. It supports clustering, consistent hashing, and various other features. It is known for its speed and efficiency, making it a good alternative to memjs for high-throughput applications.
MemJS
MemJS is a pure Node.js client library for accessing the
MemCachier service and other memcache servers. It
uses the binary protocol and support SASL authentication.
Supported Node.js versions
MemJS is tested to work with version 0.6 or higher of Node.js.
Installation
MemJS is available from the npm registry:
$ npm install memjs
To install from git:
$ git clone git://github.com/alevy/memjs.git
$ cd memjs
$ npm link
MemJS was designed for the MemCachier memcache service but will work with any
memcache server that speaks the binary protocol. Many software repositories
have a version of memcacached available for installation:
Ubuntu
$ apt-get install memcached
OS X
$ brew install memcached
Usage
You can start using MemJS immediately from the node console:
$ var memjs = require('memjs')
$ var client = memjs.Client.create()
$ client.set('hello')
Configuration
MemJS understands the following environment variables:
MEMCACHIER_SERVERS
- used to determine which servers to connect to. Should be a comma separated list of [hostname:port].MEMCACHIER_USERNAME
- if present with MEMCACHIER_PASSWORD
, MemJS will try to authenticated to the server using SASL.MEMCACHIER_PASSWORD
- if present with MEMCACHIER_USERNAME
, MemJS will try to authenticated to the server using SASL.MEMCACHE_USERNAME
- used if MEMCACHIER_USERNAME
is not presentMEMCACHE_PASSWORD
- used if MEMCACHIER_PASSWORD
is not present
Environment variables are only used as a fallback for explicit parameters.
TODOS
- Handle socket errors and retries
- Add more commands (add, replace, delete, increment, decrement, flush)
- Support expiration and flags
- Support CAS
Copyright
Copyright (c) 2012 Amit Levy, MemCachier. See LICENSE for details.