Book Image

Mastering Redis

By : Vidyasagar N V, Nelson
Book Image

Mastering Redis

By: Vidyasagar N V, Nelson

Overview of this book

Redis is the most popular, open-source, key value data structure server that provides a wide range of capabilities on which multiple platforms can be be built. Its fast and flexible data structures give your existing applications an edge in the development environment. This book is a practical guide which aims to help you deep dive into the world of Redis data structure to exploit its excellent features. We start our journey by understanding the need of Redis in brief, followed by an explanation of Advanced key management. Next, you will learn about design patterns, best practices for using Redis in DevOps environment and Docker containerization paradigm in detail. After this, you will understand the concept of scaling with Redis cluster and Redis Sentinel , followed by a through explanation of incorporating Redis with NoSQL technologies such as Elasticsearch and MongoDB. At the end of this section, you will be able to develop competent applications using these technologies. You will then explore the message queuing and task management features of Redis and will be able to implement them in your applications. Finally, you will learn how Redis can be used to build real-time data analytic dashboards, for different disparate data streams.
Table of Contents (13 chapters)
12
Index

Overview of running Redis Cluster


Nodes in a Redis Cluster are Redis instances that are either masters or slaves. A master Redis instance is allocated one or more of the 16,384 available hash slots where Redis keys are assigned to a hash slot based on the CRC16 hashing of the key and taking the remainder of dividing the CRC16 by the number of masters. When a Redis cluster is running, each node has two TCP sockets open; the first is the standard Redis protocol for connecting clients, the default being port 6379 and the second port is calculated from the sum of the first port plus 10000 (16379 for the default port) that runs the Cluster's binary protocol for node-to-node communication. Clients should never need to connect directly with the cluster bus port but with the lower, standard port. Nodes in the Redis Cluster use the Redis cluster bus to connect with every other node in a mesh network topology. This means that for a Redis cluster of six nodes made up of three masters and three slaves...