Redis学习笔记

本文介绍了Redis,一种基于内存的键值型NoSQL数据库,强调其单线程、低延迟和丰富的数据结构特性,以及在缓存、主从集群和数据持久化等方面的应用。

前言

思考:什么是Redis?Redis是缓存中间件

基础部分

一、初识Redis
1、认识NoSQL
(1)SQL和NoSQL
SQL(关系型数据库)NoSQL(非关系型数据库)
数据类型结构化(Structured):数据之间有强约束非结构化:没有约束
数据关联关联的(Relational): 数据库表之间是有关联的,外键非关联的:数据有重复
查询方式SQL查询:有固定的查询语句格式非SQL:没有固定的查询语句格式
事务特性ACIDBASE
存储方式磁盘内存
扩展性垂直水平
使用场景

1)数据结构固定

2)相关业务对数据安全性,一致性要求较高

1)数据结构不稳定

2)对一致性、安全性要求不高

3)对性能要求查询速度快

(2)Redis

Redis 即 Remote Dictionary Server,远程词典服务器,是一个基于内存的键值型NoSQL数据库

特征

        键值型,value支持多种不同数据结构,功能丰富

        单线程,每个命令具备原子性 

        低延迟,速度快(基于内存,IO多路复用、良好的编码)

        支持数据的持久化

        支持主从集群、分片集群

        支持多语言客户端

      

### Redis 学习笔记概述 Redis 是一种高性能的键值存储系统,支持多种数据结构并提供丰富的功能。为了全面掌握 Redis 的使用方法和技术细节,一份详尽的学习笔记应当覆盖以下几个方面: #### 一、基础概念介绍 - **定义与特性** - Redis 是一个开源的内存数据结构存储库,可以用作数据库、缓存和消息中间件[^1]。 - **应用场景** - 高效的数据读写操作使其适用于高速缓存场景;持久化的选项也允许作为可靠的主数据库。 #### 二、环境搭建指南 - **安装过程** - 安装完成后可以通过 `redis-server` 命令启动服务,默认情况下这会在前台运行并且占用当前终端会话[^2]。 - **后台模式配置** - 推荐通过编辑 `/usr/local/src/redis-6.2.6/redis.conf` 文件中的设置项使 Redis 在后台稳定工作。 #### 三、核心功能解析 - **基本命令集** - 包括字符串(Strings)、哈希(Hashes)、列表(Lists)等常见数据类型的增删改查指令。 - **高级特性应用** - 发布订阅(Pub/Sub),事务处理(Transaction),Lua脚本执行等功能的应用实例。 #### 四、集成开发实践 - **Spring Boot 整合案例** - 使用 Spring Data Redis 提供的 `RedisTemplate` 对象简化 Java 应用程序同 Redis 数据源之间的交互逻辑[^3]。 #### 五、优化策略探讨 - **性能调优技巧** - 考虑到 CPU 并非主要瓶颈因素而是受制于物理 RAM 和网卡吞吐能力的影响,合理规划硬件资源分配对于提升整体效率至关重要。 - **预加载机制说明** - 当应用程序首次上线前预先填充部分热点数据至 Redis 中可以有效缓解高峰期的压力,提高响应速度[^4]。 #### 六、可靠性保障措施 - **持久化方案对比** - RDB 快照方式能够在指定时间间隔内保存数据副本,确保意外断电等情况下的恢复可能性。 ```bash # 启动Redis服务器(建议采用守护进程方式) $ redis-server /path/to/redis.conf --daemonize yes ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值