Over a million developers have joined DZone.

Integrate Redis Into a Node.js Project

DZone's Guide to

Integrate Redis Into a Node.js Project

The Redis client for Node.js is pretty straightforward and easy to get up and running. Here are a few code snippets that might save you some time.

Free Resource

Try RAD Studio for FREE!  It’s the fastest way to develop cross-platform Native Apps with flexible Cloud services and broad IoT connectivity. Start Your Trial Today!

In this article we are going to add caching to our Node.js application using Redis.

We will install the recommended client for node.js as mentioned on the official Redis page.

npm install redis --save

Next we shall create our client connection

var redis = require('redis')

var hostname = ''
var port = '6379'
var password = 'yourpassword'

var client = redis.createClient(port,hostname,{no_ready_check: true})


client.on('connect', function() {
        console.log('Client was connected')

The password provided on auth will be stashed and used on every connect.

Let’s see some basic actions:

SMEMBERS actions

client.sadd('aset', 2)
client.sadd('aset', 1)
client.sadd('aset', 5)

client.smembers('aset',function(err,reply) {

Get and Set actions

client.set('akey', "This is the value")

client.get('akey',function(err,reply) {

Hash value actions

client.hset('hashone', 'fieldone', 'some value');
client.hset('hashone', 'fieldtwo', 'another value');

var hash = 'hashone'

client.hkeys(hash, function (err, fields) {

    fields.forEach(function(field,i) {

        console.log('The field is '+field)

        client.hget(hash,field,function (err, value) {
            console.log('The content is '+value)


List actions

client.rpush(['mylist', 'firstItem', 'secondItem'], function(err, listsize) {

client.lrange('mylist',0,-1,function(err,values) {

client.lpop('mylist',function(err,value) {
    console.log('Got '+value)


The Redis client for Node.js is pretty straightforward and easy to get started.

Keep in mind that one connection is adequate. Redis is single threaded therefore there is no need for opening multiple connections.

You can refer to the github page for more examples and usage showcases.

Get Your Apps to Customers 5X Faster with RAD Studio. Brought to you in partnership with Embarcadero.

redis ,nosql ,node.js

Published at DZone with permission of Emmanouil Gkatziouras, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.


Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}