Redis基础笔记总结

preview
需积分: 0 1 下载量 4 浏览量 更新于2024-04-23 收藏 54.78MB PDF 举报
### Redis基础笔记总结 #### 一、Redis入门概述 ##### 1.1 Redis是什么 - **定义**: Remote Dictionary Server(远程字典服务器)是一种开源的、高性能的键值(Key-Value)数据库。 - **语言**: 使用ANSI C语言编写,遵循BSD许可协议。 - **特性**: - **内存存储**: 数据主要存储于内存中,以提高访问速度。 - **数据结构丰富**: 提供了多种数据结构的支持,包括字符串(Strings)、哈希(Hashes)、列表(Lists)、集合(Sets)、有序集合(Sorted Sets)等。 - **事务支持**: 支持事务处理,确保数据的一致性和完整性。 - **持久化机制**: 可以将内存中的数据定期保存到磁盘,支持RDB和AOF两种持久化方式。 - **脚本执行**: 支持Lua脚本执行,用于复杂操作的原子化处理。 - **发布/订阅模式**: 实现消息传递功能。 - **缓存淘汰策略**: 支持多种缓存淘汰策略,如LRU、LFU等。 - **流(Streams)**: 流是一种新的数据结构,主要用于消息队列等场景。 - **作者**: Redis由Salvatore Sanfilippo(被称为Antirez)创建。 - **GitHub**: <https://github.com/antirez> - **个人博客**: <http://antirez.com/> ##### 1.2 Redis能干嘛 - **主流功能与应用**: - **分布式缓存**: 作为MySQL数据库前的“带刀护卫”,有效减少数据库负载。 - **内存存储与持久化**: 提供内存高速访问的同时支持将数据异步保存到磁盘,保证数据安全。 - **高可用架构**: 包括单机模式、主从复制、哨兵监控和集群部署等方案。 - **缓存穿透、击穿、雪崩问题的解决**: 通过合理的缓存设计避免这些问题的发生。 - **分布式锁**: 实现多个系统间的同步控制。 - **消息队列**: 利用列表(Lists)或集合(Sets)实现消息队列的功能。 - **排行榜与点赞**: 使用有序集合(Sorted Sets)快速实现复杂的排行榜功能。 - **优势**: - **高性能**: 读取速度可达110000次/秒,写入速度达81000次/秒。 - **丰富的数据类型**: 支持多种数据结构,满足不同的应用场景需求。 - **持久化支持**: RDB快照和AOF日志两种持久化方式保证数据的持久性。 - **数据备份**: 主从复制模式下实现数据备份,提高系统的可用性。 - **总结**: Redis凭借其高性能、丰富的数据结构和强大的功能集,在缓存、消息队列、排行榜等领域有着广泛的应用。 #### 二、Redis下载 - **官网地址**: - 英文: <https://redis.io> - 中文: <http://www.reids.cn/> - 文档: <https://www.redis.com.cn/documentation.html> - **下载页面**: <https://redis.io/download> - **其他资源**: - 源码: <https://github.com/redis/redis> - 在线测试: <https://try.redis.io/> - 命令参考: <http://doc.redisfans.com> #### 三、Redis迭代演化和Redis7新特性浅谈 - **时间推移与版本升级**: - 官方博客: <http://antirez.com/news/132> - 版本迭代历程中的一些重要里程碑。 - **Redis7.0新特性**: - **Redis Functions**: 提供函数调用的能力,扩展Redis的功能边界。 - **Client-eviction**: 客户端驱逐机制,用于管理连接资源。 - **Multi-part AOF**: 改进AOF持久化机制,提高写入效率。 - **ACL V2**: 对访问控制列表进行了重大更新。 - **新增命令**: 引入了一些新的命令以增强功能。 - **listpack代替ziplist**: 底层数据结构的优化,提高了性能。 - **性能提升**: 通过底层改进提升了整体性能。 #### 四、Redis安装卸载配置 - **Linux版安装** - **GCC编译环境**: - GCC简介: GCC是GNU Compiler Collection的缩写,是一套用于编译多种编程语言(如C/C++等)的工具集合。 - 功能: 编译、链接等。 - 平台支持: 跨平台支持多种硬件架构。 - 影响力: 在自由软件领域具有重要地位。 - 必备条件: 安装Redis之前需确保系统已安装GCC。 - **安装步骤**: - 确认具备C++库环境。 - 下载Redis源码包(如redis-7.0.0.tar.gz)。 - 解压并编译安装。 通过以上内容,我们可以看到Redis不仅在性能上有显著优势,而且在功能多样性方面也有出色表现,这些特点使得Redis成为现代应用开发中不可或缺的一部分。无论是用于构建高效的缓存系统还是实现复杂的数据结构操作,Redis都能提供强大的支持。