视频教程Redis原理及笔记记录(redis笔记原理视频)

2023-05-16 23:07:24 原理 视频教程 笔记

Redis,全称为Remote Dictionary Server,是一种高性能的开源键值对存储系统。它既能执行像数据库一样的命令,同时又能支持复杂的数据类型。 Redis 的主要优点在于快速读写和支持丰富的数据类型(如字符串、哈希、列表、集合、有序集合等),以及易于使用的命令和扩展性强等等。

Redis 是基于内存的。这使得它的速度特别快,可达到每秒操作数百万级别。 Redis 将数据存储在磁盘上,根据用户需求进行持久化操作,同时也可以将数据作为内存的数据交换。

Redis 的使用非常广泛,例如可应用于存储架构图、产品索引、用户数据等等。看到这里,相信有不少同学同样对 Redis 感兴趣。那么,接下来请跟随小编一起来了解 Redis 的基本原理及笔记记录。

Redis 的基本原理

Redis 的基本原理可以用下图来概括:

![Redis基本原理](https://img-blog.csdn.net/20180508113229499?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3N0b3JhZ2UyMDI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/70)

Redis 采用的是单线程的工作模式,它可以并发地处理来自多个客户端的请求,但这一切都存在于单个线程的上下文中。线程通过轮询所有的客户端套接字,确认其中是否有相关的事件需要被处理,而非创建线程来处理来自每个客户端的请求。

Redis 通常会将数据存储在内存中,因为在内存中访问数据仅需要约 100 毫秒的时间,而磁盘 I/O 操作则需要约 10,000 毫秒的时间。为了保护和备份数据,Redis 还提供了两种持久化数据的方法:快照持久化和追加持久化。快照持久化,它会以一定频率将 Redis 中的数据以快照的方式写入硬盘中,从而完成持久化操作。追加持久化,则是将 Redis 中的每个写操作放入磁盘文件中,并计划在某个时候对磁盘进行写入确认。

Redis 笔记记录

Redis 的命令操作可分为 5 个大类:Key 操作、String 操作、哈希操作、列表操作以及集合操作。

#### 1、Key 操作

Redis 的 Key 操作主要包含以下 6 个命令:

– DEL:删除给定 key。

– EXISTS:检查给定 key 是否存在。

– EXPIRE:给 key 设置过期时间。

– KEYS:查找所有符合给定模式( pattern)的 key。

– TYPE:返回 key 所存储的值的数据类型。

– RENAME:将 key 重命名为 newkey。

#### 2、String 操作

Redis 的 String 操作主要包含以下 9 个命令:

– APPEND:追加一个字符串值到 key 中的原有字符串值。

– BITCOUNT:统计二进制制串中 1 的数量。

– DECR:将 key 中存储的数字值减一。

– GET:获取存储在 key 中的字符串值。

– GETRANGE:获取存储在 key 中字符串的子字符串。

– INCR:将 key 中存储的数字值增一。

– SET:设置 key 的字符串值。

– SETRANGE:修改字符串的一部分内容。

– STRLEN:返回 key 所存储的字符串的长度。

#### 3、哈希操作

Redis 的哈希操作主要包含以下 6 个命令:

– HDEL:删除哈希表 key 中的一个或多个指定字段。

– HEXISTS:查看哈希表 key 中,指定的字段是否存在。

– HGET:获取哈希表 key 中给定字段的值。

– HGETALL:获取在哈希表中指定 key 的所有字段和值。

– HSET:设置哈希表 key 中指定字段的值。

– HLEN:获取哈希表中字段的数量。

#### 4、列表操作

Redis 的列表操作主要包含以下 6 个命令:

– LPUSH:在列表左侧添加一个或多个值。

– RPUSH:在列表右侧添加一个或多个值。

– LLEN:获取列表长度。

– LRANGE:获取列表指定范围内的所有元素。

– LREM:移除列表元素。

– LINDEX:通过列表下标获取列表内元素。

#### 5、集合操作

Redis 的集合操作主要包含以下 4 个命令:

– SADD:向集合添加一个或多个元素。

– SMEMBERS:获取集合中的所有元素。

– SISMEMBER:查看给定元素是否存在于集合中。

– SREM:从集合中移除一个或多个元素。

上述是 Redis 的基本原理及笔记记录,当然,做为一名开发人员,掌握 Redis 的实际应用场景、Redis 的优化和数据结构设计还是非常重要的。因此,希望小编的分享能够给大家带来一些启发。附上一份 Redis 学习视频教程,供大家参考掌握。

相关文章