Redis之Redis的初步认识以及基本概念

Redis是一款开源的高性能键值存储系统,支持多种数据结构如字符串、列表、集合等,广泛应用于缓存、计数器、消息队列等场景。本文详细介绍了Redis的速度优势、数据结构、持久化机制及在实时系统、社交网络中的应用。

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

基本概念

Redis 是:

  • 开源的
  • 基于键值的存储服务系统
  • 支持多种数据结构
  • 高性能、功能丰富

Redis 的特性:

  • 速度快
    • 数据存储于内存
    • 使用C语言(且代码质量极高)
    • 单线程
  • 持久化
    • 异步更新数据至磁盘
  • 多种数据结构
    • 字符串(String)
    • 哈希(Hash)
    • 链表(Linked List)
    • 集合(Set)
    • 有序集合(Sorted Set)
    • 其它
  • 支持多种编程语言
    • Java
    • php
    • python
    • ruby
    • nodejs
    • lua
    • 其它
  • 功能丰富
    • 发布订阅
    • 事务
    • Lua 脚本
    • pipe line
  • 简单
    • 代码精简(核心代码 2W 行)
    • 不依赖与其他外部库
    • 单线程
  • 主从复制
    • 主服务器数据同步至从服务器
  • 高可用、分布式
    • Redis-Sentinel 支持高可用
    • Redis-Cluster 支持分布式

字符串(String) 是 Redis 数据库最简单地数据结构。在这种结构中,一个键对应的值是一个字符串,一个键有且仅对应一个字符串。

列表(List) 是由若干插入顺序排序的字符串元素组成的集合。可以理解为,在这种结构中,一个键对应多个字符串类型的值。因此,整体上看起来,就是一个键对应一个列表。

集合(Set)和 列表 很像,和数据结构中的概念一样,集合 与 列表 不同之处在于,它没有顺序的概念,也不允许其中有重复的内容。

散列表(Hash)可以存储多个键值对的映射,是无序的一种数据集合。特别适合存储一个对象。

Redis 典型使用场景:

  • 缓存系统
  • 计数器
  • 消息队列系统
  • 排行榜
  • 社交网络
  • 实时系统

Redis 安装

Redis 可执行文件说明

redis-server: Redis 服务器

redis-cli:Redis 命令行客户端

redis-benchmark: Redis 性能测试工具

redis-check-aof: AOF 文件修复工具

redis-check-dump: RDB 文件修复工具

redis-sentinel: Sentinel 服务器(2.8版本以后)

三种启动方式

  • redis-server
  • 动态参数启动
  • 配置文件启动(生产环境,单机多实例)

验证:redis-cli -h -p ,再 ping ,会回复 pong

简单的客户端连接

Redis 客户端返回值

  • 状态回复
  • 错误回复
  • 整数回复
  • 字符串回复
  • 多行字符串回复

Redis 常用配置

daemonize: 是否是守护进程(no | yes),默认值是 no,建议 yes

port: 占用端口,默认 6379

logfile: Redis 系统日志

dir: Redis 工作目录

管理是在 Redis 目录下 创建 config 目录,其中用于存放 redis 启动配置文件。

可以从 Redis 目录下复制其默认配置文件 redis.conf,并重命名。例如:redis-6381.conf,其中 9527 表示该配置所要占用的端口号。

daemonize yes
port 6381
dir "/opt/soft/redis/data"
logfile "6381.log"

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值