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 分钟前
网站建设的服务器该如何选择?
运维·服务器·网站建设·保定响应式网站建设·保定h5网站建设·保定网站建设
人类群星闪耀时7 分钟前
服务器管理:从零开始的服务器安装与配置指南
运维·服务器
阿华的代码王国30 分钟前
MySQL ------- 索引(B树B+树)
数据库·mysql
码爸1 小时前
flink 批量压缩redis集群 sink
大数据·redis·flink
Hello.Reader1 小时前
StarRocks实时分析数据库的基础与应用
大数据·数据库
执键行天涯1 小时前
【经验帖】JAVA中同方法,两次调用Mybatis,一次更新,一次查询,同一事务,第一次修改对第二次的可见性如何
java·数据库·mybatis
yanglamei19621 小时前
基于GIKT深度知识追踪模型的习题推荐系统源代码+数据库+使用说明,后端采用flask,前端采用vue
前端·数据库·flask
工作中的程序员2 小时前
ES 索引或索引模板
大数据·数据库·elasticsearch
严格格2 小时前
三范式,面试重点
数据库·面试·职场和发展