Building Scalable Apps with Redis and Node.js – Book Review


Building Scalable Apps with Redis and Node.jsBuilding Scalable Apps with Redis and Node.js by Joshua Johanan

My rating: 5 of 5 stars

Regardless you are exploring NodeJS or not, this is a must have & must read book if you want to get experience and knowledge how to build scalable web applications.

Techniques described in the book (RabbitMQ, Redis) are not NodeJS specific but works with any programming language of your choice.

I liked the way author introduced express, NodeJS and packages in first chapter. While book target audience seems someone with basic NodeJS knowledge, if you know javascript well and can read & make sense of javascript code, it take few minutes to an hour to get going with NodeJS.

Socket.IO is has grown up as a replacement of Java or C# based socket servers these days due to its simplicity and scaling nature. And a complete practical chapter on implementing Socket.IO to express application with an example chat server and client add this title to cookbook category too.

Introduction of passport library to enable social logins in application without much digging into to oauth or 3rd party library make it very easier for any development of new web application these days. RabbitMQ and Redis implementation with practical use cases make it easier to understand and adopt these to any other programming language like PHP or .NET.

Chapter 7 about backbone is good but unless you already have idea about Backbone framework, you might get confused. I found myself searching and referencing Backbone documentation few times while going through this chapter. However, since this book is not about Backbone, and its used to demonstrate that while developing full stack applications, how you an make use of MV* frameworks in javascript and link those with events dispatched from backend (Socket.IO) layer, I don’t have any complaint about it.

Chapter 8 & 9 are focusing on deployment and best practices about scaling any web application. Author used Amazon EC2 but you can use any cloud server like Azure. Chapter 10 is about debugging and if you are building web applications, you must be already aware of some of tools mentioned in this chapter like Chrome developer tools (Inspect elements, network requests, console etc). However, CPU profiling, heaps and backend debugging topics are really helpful.

Overall I would suggest this book as a quick hands on guide and suggest that you get a separate book for RabbitMQ and Redis to get full benefit.

PS: I got a review copy from Publisher. You can grab book from publisher site