《高性能Redis》扬帆起航

2022-05-17 07:59:19 浏览数 (1)

哈喽,大家好,我是一条。

4月第一天,开启一个新的篇章——《高性能redis》

为什么选择写Redis,考虑以下几点:

  • 个人认为,缓存、MQ、分库分表可称为并发三剑客,而缓存就是三剑客中的大哥。
  • Redis的应用非常普遍,面试必问,受众人群更广。
  • 相比于 Kafka 等消息中间件,Redis 较为简单,底层用 C 语言编写,阅读源码也不是很困难。
  • 学完收获更多,即使你没有高并发,大数据,用了 Redis 也会锦上添花。

本系列会从安装开始,全面通关 Redis ,涉及到的内容大致如下,过程中可能会调整顺序以方便大家循序渐进的学习。

会有源码分析,也会有案例讲解,一步一步的实现分布式锁、手写LRU、彻底搞懂 IO 多路复用、集群搭建、性能优化等等。

Redis个人觉得有两本写的非常好的书:《Redis的设计与实现》和《Redis深度历险》,本专栏也会参考书中的内容,力求言简意赅,但又鞭辟入里,脚踏实地的带大家把 Redis 拿下。

好了,天也不早了,也该干正事了。

安装

由于 Redis 的 IO 多路复用依赖 Linux 底层的 epoll 机制,所以不推荐安装在 windows 系统上。 可以装虚拟机或者买一台云服务器。

1.安装 gcc 环境

前面说过底层是 C 语言编写,所以就像安装 JDK 一样,我们需要先有 gcc 环境。

代码语言:javascript复制
# 查看是否已经安装
gcc -v

# gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 

使用 yum 安装

代码语言:javascript复制
yum install gcc-c   -y
# 完成后 gcc -v 验证一下

2.下载 Redis

到中文版的官网下载安装包,然后上传到服务器。

也可以 用 wget 直接下载

代码语言:javascript复制
## 官网:http://redis.cn/
wget http://download.redis.io/releases/redis-6.0.6.tar.gz

下载完成后,需要解压,编译。

代码语言:javascript复制
tar -zxf redis-6.2.6.tar.gz
cd redis-6.2.6
make

3.修改配置文件

Redis 默认使用的端口是 6379 ,默认无密码。这是非常不安全的。可以通过修改其配置文件,更改端口,设置强密码,增加其安全性。

这步一定要做,而且密码要复杂,否则今天装完,明天就被挖矿,血的教训。

除此之外,还要开启远程访问后台运行。开干吧!

打开配置文件

代码语言:javascript复制
vi etc/redis.conf

修改如下

vi 模式下,输入 / 查找特定字符 再输入 n 跳到下一个

代码语言:javascript复制
# 开始后台运行
daemonize yes

# 注释掉只能本地连接,即开始远程连接,也可以配置上本地的ip
# bind 127.0.0.1

# 修改端口
port 6380

# 设置密码
requirepass XXXXXXXXX

保存一下,就可以启动了。

4.启动

代码语言:javascript复制
# redis-server 启动,并指定配置文件
./bin/redis-server ./etc/redis.conf

启动成功,本地先连接一下

代码语言:javascript复制
# -p指定端口
./bin/redis-cli -p 6378
# auth 输入密码
auth password
# 添加key1
set key1 abc
# 查看 key1
get key1

OK,在服务器上安装完成,类似用 Navicat 连接 MySQL 一样,我们也需要一个客户端工具。

远程连接

类似工具有很多,使用比较多的有 RDM 和 ARDM。

RDM 即 Redis Desktop Manger,windows 和 mac 都有,官网下载即可。

新建一个链接,输入ip、port、password即可连接。

左侧为连接列表,展示显示 key 点击 key ,右边显示 value。

也可以用命令行操作。

打完收工。

总结

万事开头难,后面难上加难。

0 人点赞