摘要: 1、Redis 的简介 Redis:REmote DIctionary Server(远程字典服务)。 是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库。是完全开源免费的,用C语言编写的,遵守BSD协议,高性能的(key/value)分布式内存 阅读全文
posted @ 2020-11-24 15:33 钟桂耀 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 本篇博客我们主要介绍如何用Redis实现布隆过滤器,但是在介绍布隆过滤器之前,我们首先介绍一下,为啥要使用布隆过滤器。 1、布隆过滤器使用场景 比如有如下几个需求: ①、原本有10亿个号码,现在又来了10万个号码,要快速准确判断这10万个号码是否在10亿个号码库中? 解决办法一:将10亿个号码存入数 阅读全文
posted @ 2020-11-24 15:04 钟桂耀 阅读(768) 评论(0) 推荐(0) 编辑
摘要: 本篇博客我们来介绍Redis使用过程中需要注意的三种问题:缓存穿透、缓存击穿、缓存雪崩。 1、缓存穿透 一、概念 缓存穿透:缓存和数据库中都没有的数据,可用户还是源源不断的发起请求,导致每次请求都会到数据库,从而压垮数据库。 如下图红色的流程: 比如客户查询一个根本不存在的东西,首先从Redis中查 阅读全文
posted @ 2020-11-24 14:54 钟桂耀 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 在介绍这篇文章之前,我们先来看如下几个问题: ①、如何设置Redis键的过期时间? ②、设置完一个键的过期时间后,到了这个时间,这个键还能获取到么?假如获取不到那这个键还占据着内存吗? ③、如何设置Redis的内存大小?当内存满了之后,Redis有哪些内存淘汰策略?我们又该如何选择? 如果上面的几个 阅读全文
posted @ 2020-11-24 14:52 钟桂耀 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 在上一篇博客我们介绍了 Redis哨兵(Sentinel)模式,哨兵模式主要是解决高可用问题,在master节点宕机时,slave节点能够自动切换成为master节点 本篇博客我们来介绍Redis的另外一种模式 集群模式. PS:我这里搭建演示的版本是redis-5.0.5,这个版本对于集群搭建会有 阅读全文
posted @ 2020-11-24 14:49 钟桂耀 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 在上一篇博客 Redis详解(八) 主从复制,我们简单介绍了Redis的主从架构,但是这种主从架构存在一个问题,当主服务器宕机,从服务器不能够自动切换成主服务器,为了解决这个问题,我们又介绍了哨兵模式,本篇博客我们继续深入的介绍一下这种模式. 1、架构图 2、服务器列表 3、搭建主从模式 ①、主要配 阅读全文
posted @ 2020-11-24 14:39 钟桂耀 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 前面介绍Redis,我们都在一台服务器上进行操作的,也就是说读和写以及备份操作都是在一台Redis服务器上进行的,那么随着项目访问量的增加,对Redis服务器的操作也越加频繁,虽然Redis读写速度都很快,但是一定程度上也会造成一定的延时,那么为了解决访问量大的问题,通常会采取的一种方式是主从架构M 阅读全文
posted @ 2020-11-24 14:22 钟桂耀 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章我们介绍了Redis的RDB持久化,RDB 持久化存在一个缺点是一定时间内做一次备份,如果redis意外down掉的话,就会丢失最后一次快照后的所有修改(数据有丢失)。对于数据完整性要求很严格的需求,怎么解决呢? 本篇博客接着来介绍Redis的另一种持久化方式——AOF。 1、AOF简介 阅读全文
posted @ 2020-11-24 12:37 钟桂耀 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 前面我们说过,Redis 相对于 Memcache 等其他的缓存产品,有一个比较明显的优势就是 Redis 不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。这几种丰富的数据类型我们花了两篇文章进行了详细的介绍,接下来我们要介绍 Redis 阅读全文
posted @ 2020-11-24 12:31 钟桂耀 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 前面两篇博客,第一篇介绍了五大数据类型的基本用法,第二篇介绍了Redis底层的六种数据结构。在Redis中,并没有直接使用这些数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统,这些对象系统也就是前面说的五大数据类型,每一种数据类型都至少用到了一种数据结构。通过这五种不同类型的对象, 阅读全文
posted @ 2020-11-24 12:17 钟桂耀 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 上一篇博客我们介绍了 redis的五大数据类型详细用法,但是在 Redis 中,这几种数据类型底层是由什么数据结构构造的呢?本篇博客我们就来详细介绍Redis中五大数据类型的底层实现。 1、演示数据类型的实现 上篇博客我们在介绍 key 相关命令的时候,介绍了如下命令: OBJECT ENCODIN 阅读全文
posted @ 2020-11-24 11:51 钟桂耀 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 我们说 Redis 相对于 Memcache 等其他的缓存产品,有一个比较明显的优势就是 Redis 不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。本篇博客我们就将介绍这些数据类型的详细使用以及顺带介绍Redis系统的相关命令用法。 注 阅读全文
posted @ 2020-11-24 11:06 钟桂耀 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 上一篇博客我们介绍了如何安装Redis,在Redis的解压目录下有个很重要的配置文件 redis.conf (/opt/redis-4.0.9目录下),关于Redis的很多功能的配置都在此文件中完成的,在上一讲我也说过,一般为了不破坏安装的文件,出厂默认配置最好不要去改,所以我们将此配置文件复制到 阅读全文
posted @ 2020-11-24 10:52 钟桂耀 阅读(204) 评论(0) 推荐(0) 编辑