Book Image

Redis 4.x Cookbook

Book Image

Redis 4.x Cookbook

Overview of this book

Redis is considered the world's most popular key-value store database. Its versatility and the wide variety of use cases it enables have made it a popular choice of database for many enterprises. Based on the latest version of Redis, this book provides both step-by-step recipes and relevant the background information required to utilize its features to the fullest. It covers everything from a basic understanding of Redis data types to advanced aspects of Redis high availability, clustering, administration, and troubleshooting. This book will be your great companion to master all aspects of Redis. The book starts off by installing and configuring Redis for you to get started with ease. Moving on, all the data types and features of Redis are introduced in detail. Next, you will learn how to develop applications with Redis in Java, Python, and the Spring Boot web framework. You will also learn replication tasks, which will help you to troubleshoot replication issues. Furthermore, you will learn the steps that need to be undertaken to ensure high availability on your cluster and during production deployment. Toward the end of the book, you will learn the topmost tasks that will help you to troubleshoot your ecosystem efficiently, along with extending Redis by using different modules.
Table of Contents (21 chapters)
Title Page
Dedication
Packt Upsell
Foreword
Contributors
Preface
13
Windows Environment Setup
Index

Troubleshooting memory issues


As we mentioned at the beginning of this book, Redis is a memory-based, key-value data store. Therefore, apart from latency issues, memory utilization issues are another kind of fatal problem. In this recipe, we will see how to perform troubleshooting of memory issues in Redis.

Getting ready…

You need to finish setting up the replication of the Redis Server, as we described in the Setting up Redis replication recipe in Chapter 5, Replication.

How to do it...

You should make sure you are able to get alerted when the memory issues happen:

  1. Firstly, watch out if the used_memory_human metric is greater than the metric maxmemory_human:
$ bin/redis-cli INFO MEMORY|egrep "used_memory_human|maxmemory_human"
used_memory_human:1016.45M
maxmemory_human:1.00G  
  1. Test regularly to see if it's working properly by writing a simple key value pair into the Redis instance:
127.0.0.1:6379> SET foo bar
(error) OOM command not allowed when used memory > 'maxmemory'.  
  1. Take a note of...