Redis Deep Adventure: Core Principles and Application Practice

SYBH. 2022-11-24 21:17:39 阅读数:260


Booklet Introduction

Redis is the most widely used middleware in the storage system of the Internet technology architecture. It is also one of the engineering skills interviewers like to ask in the technical interviews of intermediate and senior back-end engineers, especially those excellent and highly competitive large-scaleInternet companies (such as Twitter, Sina Weibo, Alibaba Cloud, Tencent Cloud, Taobao, Zhihu, etc.) usually require interviewers not only to master the basic use of Redis, but also to have a deep understanding of the detailed principles of Redis' internal implementation.It is no exaggeration to say that if you can understand all the knowledge points of Redis, half of your foot has already stepped into the technology research and development department of your favorite big company.

However, in the many interviews I usually experience, Lao Qian found that most of the students only use Redis as data cache and use the simplest get/set method, and they are almost at a loss.There are also a small number of students who know the distributed lock of Redis, but they are not clear about its internal implementation mechanism, and even its use is not standard, which leads to unexpected problems in the production environment.There are still many students who don't realize that Redis is a single-threaded structure, and don't understand why Redis can support high concurrency with a single thread.This is also the original intention of Lao Qian to write this booklet, to help more back-end developers master Redis skills faster and deeper by sorting out and summarizing his practical experience.

In order to support massive (billion-level) user services, Palmyue Technology, where Laoqian works, uses thousands of Redis instances, including about 100 Redis clusters (Codis) and many independent Redis nodes. Therefore, when usingRedis has accumulated rich practical experience as a cache and persistent storage middleware, which will be shared in this booklet without reservation.

Redis involves a lot of knowledge points. This booklet will mainly explain the most common Redis core principles and application practical experience, so that readers can quickly arm themselves and land in the usual Redis project development after reading.In addition, it will also go deep into some fundamental basic principles of computer science and the way of thinking about technology applications. These basic knowledge and skills will ultimately determine how fast and far your technical life can go.

The structure of this booklet

In terms of content structure, this booklet is divided into 5 sections: Redis basic application, principle, cluster, extended learning and source code analysis:

  • Basic application of Redis: It occupies the longest space, and it is also the most valuable content for readers, which can be directly applied to actual work.
  • Principle and cluster section: suitable for developers who have the ultimate pursuit of technology, they hope to see the exquisite underlying world through the simple technical surface.
  • Expanded learning section: As a supplementary part beyond the core content, it is mainly used to further expand the technical horizon or consolidate the foundation for advanced learning. The author will continue to expand more knowledge points in the expanded chapter as much as possible.
  • Source code analysis section: It mainly satisfies the strong desire of high-end users to deeply explore the internal implementation of Redis. Such readers firmly believe that understanding the source code is the real embodiment of technical strength.

Pictures and texts, animation demonstration

All the static pictures in the brochure use a colorful and easy-to-use online drawing tool: Processon

The dynamic pictures of the booklet use the Keynote that comes with the Mac system to make ppt animations, and then use Screenflow to record and edit the screen to export gif animations.

Suitable crowd

  1. Have a Redis foundation, eager to master the technical principles of Redis in depth and not limited to intermediate and advanced back-end developers who can only use it;
  2. Intermediate and senior back-end developers who are eager to successfully enter the R&D department of large Internet companies;
  3. Junior and middle-level operation and maintenance engineers who need to support the company's Redis middleware operation and maintenance work;
  4. Back-end technical interviewers who want to better design Redis interview questions;
  5. Intermediate and advanced front-end technology friends who are curious about Redis middleware technology;

About the author

Qian Wenpin (Old Qian), a ten-year veteran of Internet distributed high-concurrency technology, is currently an expert in palm reading server technology.Proficient in Java, Python, Golang and other computer languages, developed games, made websites, wrote message push systems and MySQL middleware, and implemented open source ORM frameworks, Web frameworks, RPC frameworks, etc.Have the following shared experiences:

Celebrity recommendation

copyright:author[SYBH.],Please bring the original link to reprint, thank you.