Redis第一章之初识Redis

Redis是一款高性能的键值对数据库,以其丰富的数据结构、内存存储及持久化、主从复制等功能著称。适用于缓存、排行榜、计数器等场景。本文介绍了Redis的特性、应用场景、安装步骤,建议开发运维结合并选择稳定版本。安装Redis时,建议使用源码编译,并关注版本选择,如Redis 6.0.5。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Redis第一章之初识Redis

理论篇

1.redis是什么?

​ Redis 是一种基于键值对(key-value)的NoSQL数据库,与很多键值对数据库不同的是,Redis中的值可以是由string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)、Bitmaps(位图)、HyperLogLog、GEO(地理信息定位)等多种数据结构和算法组成,因此Redis可以满足很多的应用场景,而且因为Redis会将所有数据都存放在内存中,所以它的读写性能非常惊人。

​ Redis 还可以将内存的数据利用快照和日志的形式保存到磁盘中,保证数据在机器故障时不会丢失数据。除此之外,redis还提供键过期、发布订阅、事务、流水线(pipeline)、Lua脚本功能。

  • 键过期

设置key的过期时间,只能精确到键,不能精确到集合、列表、哈希中的某个值。

应用场景:a.验证码过期;b.优惠活动过期等限时的场景。

  • 发布订阅

消息发布者和订阅者可以不进行直接通信,发布者向指定频道发消息,订阅该频道的订阅者都可以收到消息。

应用场景:a.聊天室;b.公告牌;c.服务之间利用消息解耦。

  • 流水线

它能将一组Redis命令进行组装,通过一次RTT传输给Redis,再将这组Redis命令的执行结果按顺序返回给客户端。

应用场景:a.在要执行多条redis命令的情况下,将命令统一打包,可以节省网络传输时间。

  • Lua脚本
  1. Lua脚本在Redis中是原子执行的,执行过程中间不会插入其他命令。
  2. Lua脚本可以将多条命令一次性打包,有效地减少网络开销。

应用场景:a.商品秒杀;b.有依赖的批量查询

注意点:redis计算时为单线程,如果lua脚本执行时间过长,会影响reids的响应时间。

2.redis的特性
  1. 速度快
  2. 基于键值对的数据结构服务器
  3. 简单稳定、功能丰富
  4. 客户端语言多
  5. 可以持久化
  6. 主从复制
  7. 高可用和分布式
3.redis应用场景

redis可以做什么?

  1. 缓存
  2. 排行榜系统
  3. 计数器应用
  4. 消息队列系统

redis不建议做什么?

  1. 存储大量数据,如几亿
  2. 缓存数据库中全部数据,因为有一些数据是不经常访问的,缓存全部数据会浪费资源。
4.用好reids的建议
  1. 切勿当作黑盒使用,开发与运维同样重要。开发人员不仅仅需要了解命令的使用,还要了解reids运行原理。
  2. 阅读源码。redis的代码量相对于其他非关系型数据来说是非常小的,通过阅读优秀的源码,不仅能够加深我们对于Redis的理解,而且还能提高自身的编码水平,甚至可以对Redis做定制化
5.redis 的版本选择

Redis借鉴了Linux操作系统对于版本号的命名规则:版本号第二位如果是奇数,则为非稳定版本(例如2.7、2.9、3.1),如果是偶数,则为稳定版本(例如2.6、2.8、3.0、3.2)。当前奇数版本就是下一个稳定版本的开发版本,例如2.9版本是3.0版本的开发版本。所以我们在生产环境通常选取偶数版本的Redis,如果对于某些新的特性想提前了解和使用,可以选择最新的奇数版本。

总结:
  1. Redis的8个特性:速度快、基于键值对的数据结构服务器、功能丰富、简单稳定、客户端语言多、持久化、主从复制、支持高可用和分布式。
  2. Redis并不是万金油,有些场景不适合使用Redis进行开发。
  3. 开发运维结合以及阅读源码是用好Redis的重要方法。
  4. 生产环境选取稳定版本的Redis。
  5. Redis3.0是重要的里程碑,发布了Redis官方的分布式实现Redis Cluster。

安装篇

  • redis版本:6.0.5
  • 操作系统:Centos7.5

​ Redis能够兼容绝大部分的POSIX系统,例如Linux、OS X、OpenBSD、NetBSD和FreeBSD,其中比较典型的是Linux操作系统(例如CentOS、Redhat、Ubuntu、Debian、OS X等)。在Linux安装软件通常有两种方法,第一种是通过各个操作系统的软件管理软件进行安装,例如CentOS有yum管理工具,Ubuntu有apt。但是由于Redis的更新速度相对较快,而这些管理工具不一定能更新到最新的版本,所以一般采用第二种方式:源码的方式进行安装。

安装过程
# 拉取redis压缩包
$ wget http://download.redis.io/releases/redis-6.0.5.tar.gz
# 解压
$ tar xzf redis-6.0.5.tar.gz
# 进入解压后的文件夹(也可以重命名)
$ cd redis-6.0.5
# 检查gcc版本号,redis6.x需要gcc >= 4.9
    # if gcc >= 4.9 :
        # 可以直接编译
   # else:
       # 升级gcc
           # 安装centos-release-scl
           yum install centos-release-scl
           # 安装 devtoolset
           yum install devtoolset-9-gcc*
           # 激活(临时激活)
           scl enable devtoolset-9 bash
           # 永久有效方式
           #把下面的脚本放入/etc/init.d目录下 并给文件加上执行权限,开机启动
           #--------------------------------------#
           #/bin/bash
           source /opt/rh/devtoolset-9/enable
           #--------------------------------------#
                 
# 编译
$ make
# 安装
$ make install

# 设置环境变量
    # 方式一:将src下的命令复制到/usr/bin/下
    # 方式二:编辑用户目录下的.bash_profile 文件

安装建议:对 redis-6.0.5 文件夹建个软连接到 redis 文件夹下,设置环境变量到redis文件下。

好处:之后版本升级直接修改软连接即可。

​redis 安装后运行 ./src/redis-server 命令即可运行,但是此时参数都是默认的,不建议这样使用。

​redis 的配置文件为解压后的目录下的 redis.conf,配置文件的具体信息可以参考里面的英文注释,具体解析之后会专门出一篇来说。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

醒狮运维

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值