Redis --- 安装教程

Redis--- 特性,使用场景,安装

安装教程

🚀安装之前切换到root用户。

在Ubuntu下安装

1.安装

bash 复制代码
apt install redis //Ubuntu下下载后默认启动了redis

2.修改配置文件

bash 复制代码
vim /etc/redis/redis.conf
bind 0.0.0.0 ::1  //修改bind后的内容
protected-mode no //保护模式改为no

3.重启服务器

bash 复制代码
service redis-server restart

在Centos7.6下安装Redis5

1.安装scl源

bash 复制代码
yum install centos-release-scl-rh

2.安装Redis5

bash 复制代码
yum install rh-redis5-redis 

3.对可执行程序做软连接

bash 复制代码
cd /usr/bin
ln -s /opt/rh/rh-redis5/root/usr/bin/redis-server ./redis-server
ln -s /opt/rh/rh-redis5/root/usr/bin/redis-sentinel ./redis-sentinel
ln -s /opt/rh/rh-redis5/root/usr/bin/redis-cli ./redis-cli

4.对配置文件做软连接

bash 复制代码
cd /etc/
ln -s /etc/opt/rh/rh-redis5/ ./redis

5.修改配置文件

bash 复制代码
bind 0.0.0.0 #修改ip
protected-mode no #关闭保护模式
daemonize yes #启动守护进程

🚀设置工作目录

bash 复制代码
mkdir -p /var/lib/redis  //创建一个新的目录
dir /var/lib/redis       //修改配置文件中dir 后面的内容

🚀设置日志目录

bash 复制代码
mkdir -p /var/log/redis/  #创建新的日志目录
logfile /var/log/redis/redis-server.log #修改日志文件的路径

6.启动redis

bash 复制代码
redis-server /etc/redis/redis.conf

7.终止Redis

bash 复制代码
kill redis的pid

特性

在内存中存储数据

🚀redis是将数据存储在内存中的数据结构中的,像MySQL这样的主要通过"表"的方式来存储组织数据的关系型数据库。Redis主要是通过"键值对"的方式来存储组织数据的非关系型数据库。

可编程的

🚀针对Redis的操作,可以通过使用简单的交互式命令进行操作。也可以通过一些脚本的方式,批量执行一些操作(可以带有一些逻辑)。

扩展能力

🚀在Redis原有的基础上进行扩展,Redis提供了一组API,可通过C/C++,Rust编写Redis扩展(本质上是一个动态链接库)。

持久化

🚀Redis是把数据存储在内存上的,为了是更快速的访问。Redis也会把数据存储在硬盘上,内存为主,磁盘为辅。(相当于对内存数据的备份,如果Redis重启了,就会在重启时加载硬盘中的备份数据,使Redis的内存恢复到重启前的状态)

集群

🚀Redis作为分布式系统中的一个中间件,能够支持集群是很关键的。一个Redis能存储的数据是有限的,那么就可以引入多个主机,部署多个Redis结点,每个Redis存储数据的一部分。

高可用

🚀Redis自身也是支持主从这种结构的,从结点就相当于主节点的备份。

快速

🚀Redis数据存储在内存中,就比访问硬盘的数据库要快。

🚀Redis的核心功能都是比较简单的逻辑。核心功能都是操作内存中的数据结构。

🚀从网络角度上,Redis使用了IO多路转接的方式(epoll)。

🚀Redis使用的是单线程模型,这样的单线程模型,就减少了不必要的线程之间的竞争开销。(多线程能提高效率的前提:CPU密集型任务,使用多个线程可以充分的利用CPU多核资源,但是Redis的核心人物,主要就是操作内存中的数据结构,不会消耗太多CPU)。

应用场景

实时数据存储

🚀将Redis当作数据库使用,对于实时性比较高的场景,延迟比较低适合使用Redis。

作为缓存或者Session存储

🚀将热点数据拿出来存储在Redis中(20%的数据满足80%的请求--二八原则)。从Redis中拿数据比从MySQL这样的数据库中拿数据要快很多的。

🚀通常来说Session是存储在应用服务器的内存中的,但是在分布式系统尤其是使用了负载均衡的架构下,可能同一个用户的多次请求被分发到了不同的应用服务器上,就会导致用户重新认证。可以将会话数据单拎出来放在一个Redis服务器上,所有的应用服务器都将Session存储在这个Redis中。(应用程序重启,会话不会丢失)

消息队列

🚀此处的消息队列指的不是Linux进程间通信的那个消息队列。这里指的是一个消息队列服务器,基于这个可以实现一个网络版本的生产者消费者模型。

相关推荐
冒泡的肥皂2 小时前
MVCC初学demo(一
数据库·后端·mysql
.Shu.3 小时前
Redis Reactor 模型详解【基本架构、事件循环机制、结合源码详细追踪读写请求从客户端连接到命令执行的完整流程】
数据库·redis·架构
卡拉叽里呱啦4 小时前
缓存-变更事件捕捉、更新策略、本地缓存和热key问题
分布式·后端·缓存
繁星¹⁸⁹⁵4 小时前
通过update-alternatives可以实现cuda的多版本切换
服务器
薛晓刚6 小时前
当MySQL的int不够用了
数据库
SelectDB技术团队6 小时前
Apache Doris 在菜鸟的大规模湖仓业务场景落地实践
数据库·数据仓库·数据分析·apache doris·菜鸟技术
开航母的李大6 小时前
软件系统运维常见问题
运维·服务器·系统架构·运维开发
星空下的曙光6 小时前
mysql 命令语法操作篇 数据库约束有哪些 怎么使用
数据库·mysql
小楓12017 小时前
MySQL數據庫開發教學(一) 基本架構
数据库·后端·mysql
染落林间色7 小时前
达梦数据库-实时主备集群部署详解(附图文)手工搭建一主一备数据守护集群DW
数据库·sql