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进程间通信的那个消息队列。这里指的是一个消息队列服务器,基于这个可以实现一个网络版本的生产者消费者模型。

相关推荐
EricWang135818 分钟前
[OS] 项目三-2-proc.c: exit(int status)
服务器·c语言·前端
时差95321 分钟前
【面试题】Hive 查询:如何查找用户连续三天登录的记录
大数据·数据库·hive·sql·面试·database
让学习成为一种生活方式23 分钟前
R包下载太慢安装中止的解决策略-R语言003
java·数据库·r语言
算法与编程之美44 分钟前
文件的写入与读取
linux·运维·服务器
秋意钟1 小时前
MySQL日期类型选择建议
数据库·mysql
Dxy12393102162 小时前
python下载pdf
数据库·python·pdf
JaneJiazhao2 小时前
HTTPSOK:SSL/TLS证书自动续期工具
服务器·网络协议·ssl
桀桀桀桀桀桀2 小时前
数据库中的用户管理和权限管理
数据库·mysql
萨格拉斯救世主3 小时前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器
无所谓จุ๊บ3 小时前
树莓派开发相关知识十 -小试服务器
服务器·网络·树莓派