这是我参与「第五届青训营」伴学笔记创作活动的第 17 天,今天对Redis进行了初步的学习,对Redis的概念以及Redis的工作原理进行了初步的了解,在这里进行简单的总结
概念
什么是Redis: Redis是一个开源的,内存中的数据结构存储系统。它可以用作数据库、缓存和消息代理。Redis 支持多种数据类型,如字符串、哈希、列表、集合、有序集合等。它特别适合在许多读写操作频繁的环境中使用,因为它提供了极快的读写速度。另外,Redis 还提供了一些高级特性,例如事务、消息通知和持久化等。总的来说,Redis 是一个高性能、功能强大的数据存储解决方案。
为什么要使用Redis: 在使用MySQL当业务变得复杂之后,演变出了分库分表,MySQL会逐渐从一个单机演变为集群,这时数据库读写的压力会不断加大,数据量也会逐渐变大,相比于读取MySQL磁盘中的数据,读取Redis在内存中的数据消耗的时间更少,使业务效率更高。
Redis的工作原理
Redis 工作核心在于它将数据存储在内存中,这样可以提高读写速度。当 Redis 启动时,它会将数据加载到内存中,并在内存中维护数据的一致性。
当客户端对 Redis 进行写操作时,Redis 会将数据先存储到内存中,然后再通过持久化机制将数据写入磁盘。这个持久化机制可以是 RDB (Redis DataBase) 持久化或 AOF (Append-Only File) 持久化。RDB 持久化会在一定时间间隔内定期将内存中的数据快照写入磁盘,而 AOF 持久化则是将每一个写操作的命令追加到磁盘上的 AOF 文件中。
当客户端对 Redis 进行读操作时,Redis 会直接从内存中读取数据,返回给客户端。如果某个数据不存在于内存中,Redis 就会返回特定的错误消息。