分类:Redis原理篇
-
为什么单线程的Redis那么快?
1. Redis单线程的本质 其实,Redis并不是单线程,我们之所以会一直称Redis是单线程,这是因为Redis在处理客户端的读写请求时,只有一个主线程,而在处理以下这些操作时…
-
Redis 缓存雪崩、缓存穿透、缓存击穿、缓存与数据库双写一致
缓存雪崩 缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间(例如:我们设置缓存时采用了相同的过期时间,在同一时刻出现大面积的缓存过期),所有原本应该访问缓存的请求都去…
-
Redis 高可用:主从、哨兵、集群
主从复制 master-slave主从概念 同时运行多个redis服务端,其中一个作为主(master),其他的一个或多个作为从(slave),主从之间通过网络进行通讯,slave…
-
Redis 持久化:RDB快照和AOF机制
什么是Redis持久化 持久化就是把内存中的数据写到磁盘中去,防止服务宕机了内存数据丢失。 Redis的持久化机制 Redis提供两种持久化机制:RDB快照(默认)和AOF(机制)…
-
Redis 过期键删除策略和内存淘汰策略
Redis采用的是定期删除+惰性删除策略 为什么不用定时删除策略? 定时删除,用一个定时器来负责监视key,过期则自动删除。虽然内存及时释放,但是十分消耗CPU资源。在大并发请求下…
-
RedisObject 数据结构
Redis类型系统 在 Redis 的命令中, 用于对键 (key) 进行处理的命令占了很大一部分, 而对于键所保存的值的类型, 键能执行的命令又各不相同. 比如说, LPUSH …
-
Redis 事务
Redis事务 Redis事务功能是通过MULTI、EXEC、DISCARD和WATCH 四个原语实现的 Redis事务的三个阶段 事务开始 MULTI 命令入队 事务执行 EXE…
-
Redis 数据类型和使用场景
一、Redis 五种数据类型和使用场景 redis 有五种数据类型,六种底层数据结构 类型 简介 场景 String(字符串) 二进制安全 — Hash(哈希) 键值对…
-
Redis 开发规范(健值设计、命令使用)
一、键值设计 1. key 名设计 【建议】: 可读性和可管理性 以业务名 (或数据库名) 为前缀 (防止 key 冲突),用冒号分隔,比如业务名: 表名:id ugc:video…
-
Redis与RabbitMQ队列对比
简要介绍 RabbitMQ RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方…
-
Memcached与Redis差异性对比
Memcached与Redis作为近些年来用得最多的缓存服务器,若想用好,有必要将它们进行对比分析。 共同点 想了解一个软件,得先知道它是干什么用的。那么memcached和red…
-
如何访问 Redis 中的海量数据?(命令keys、scan区别和用法)
前言 有时候我们需要知道线上的redis的使用情况,尤其需要知道一些前缀的key值,那我们怎么去查看呢? 事故产生 因为我们的用户token缓存是采用了【user_token:us…