2.Redis概述安装

2.Redis概述安装

redis特点:

​ 1.Redis是一个开源的key-value存储系统。

​ 2.和Memcached类似,它支持存储的velue类型相对更多,包括String(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合) 和hash(哈希类型)。

​ 3.这些数据类型都支持push/pop、add/remove 及取交集、并集、差集及更丰富的操作,而且这些操作都是原子性的。

​ 4.在此基础上,,Redis支持各种不同方式的排序。

​ 5.与Memcached一样,为了保证效率,数据都缓存在内存中。

​ 6.区别的是Redis会周期型的把更新的数据写入磁盘或者把修改的操作写入追加的记录文件中。

​ 7.并且在此基础上实现了master-slave(主从)同步。

2.1应用场景

2.1.1 配合关系型数据库做高速缓存

​ 1.高频次,热门访问的数据,降低数据库的IO

​ 2.分布式架构,做session的共享

2.1.2多样的数据结构存储持久化数据

例如:

在这里插入图片描述

2.2 Redis安装

1.Redis官网 http://redis.io

​ Redis中文官网 http://redis.cn

2.安装步骤

​ 1.下载安装包

​ 2.准备工作 : 下载安装最新版的gcc编译器

​ 安装c语言编译环境

​ yum install centos-release-scl scl-utils-build

​ yum install -y devtoolset-8-toolchain

​ scl enable devtoolset-8 bash

​ 测试gcc

​ gcc -version

​ 3.解压命令:tar -zxvf redis-6.2.1.tar.gz

​ 4.解压完后进入目录 : cd redis-6.2.1

​ 5.在redis-6.2.1 目录下再执行 make 命令(只是编译好了)

​ 6.如果没有准备好c语言编译环境,make会报错 -Jemalloc/jemalloc.h:没有那个文件 (解决:运行make distclean)

​ 7.跳过make test 继续执行: make intall (安装)

3.查看默认安装目录:

​ 1.redis-banchmark : 性能测试工具,可以在自己本子上运行,测试自己本子的性能如何

​ 2.redis-check-aof : 修复有问题的AOF文件

​ 3.redis-check-dump:修复有问题的dump.rdb文件

​ 4.redis-sentinel : Redis集群使用

​ 5.redis-server : Redis 服务启动命令

​ 6.redis-cli :客户端,操作入口

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kQkcp7pY-1688572956218)(C:\Users\16482\AppData\Roaming\Typora\typora-user-images\image-20230315230056547.png)]

4.前台启动(不推荐)

前台启动,命令行窗口不能关闭,否则服务停止

在这里插入图片描述

5.后台启动(推荐)

​ 1.备份redis.conf

​ 拷贝一份redis.conf到其他目录 cp 下载/redis/redis-6.2.6/redis.conf /etc

​ 2.后台启动设置daemonize no 改成 yes

​ 修改redis.conf(128行)文件中的daemonize no 改成 yes ,让服务在后台启动

​ 3.Redis启动

​ hadoop@ubuntu:/usr/local/bin$ redis-server /etc/redis.conf

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BBhFDPjd-1688572956223)(C:\Users\16482\AppData\Roaming\Typora\typora-user-images\image-20230315234211101.png)]

​ 4.用客户端访问:redis-cli

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ETP1FJKI-1688572956225)(C:\Users\16482\AppData\Roaming\Typora\typora-user-images\image-20230315234421111.png)]

​ 5.测试验证 : ping

在这里插入图片描述

​ 6.Redis关闭

​ 1.单实例关闭 : redis-cli shutdown

​ 2.也可以进入终端后关闭

在这里插入图片描述

​ 3.找到进程号 执行kill命令

​ ps -ef | grep redis 查看带有redis的进程

​ kill -9 8955 杀掉进程号为8955的进程

在这里插入图片描述

6.Redis相关知识介绍

​ 1.端口 6379 -> Merz(人名)

​ 2.默认16个数据库,类似数组下标从0开始,初始默认使用0号库

​ 3.使用命令select dbid 来切换数据库,如:select 8

​ 4.统一密码管理,所有的库使用同样的密码。

​ 5.dbsize 查看当前数据库key的数量

​ 6.flushdb 清空当前库

​ 7.flushall 通杀全部库

Redis是单线程+多路IO复用技术

​ 多路复用是指 使用一个线程来检查多个文件描述符(Socket)的就绪状态。比如调用select和poll函数,传入多个文件描述符,如果有一个描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作,可以在同一个线程中执行,也可以启动线程执行(比如使用线程池)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yJVGIOAZ-1688572956236)(C:\Users\16482\AppData\Roaming\Typora\typora-user-images\image-20230317225207896.png)]

​ 串行 vs 多线程+锁(memcached) vs 单线程+ 多路IO复用(redis)

总结:redis与memcached三点不同:

​ 1.redis支持多数据类型,如string、list、set…,memcached只支持string类型

​ 2.redis支持持久化,memcached不支持

​ 3.redis是由单线程 + 多路IO复用实现的,memcached由多线程 + 锁 实现的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值