
Redis
文章平均质量分 80
redis相关内容
RichardGeek
一枚普通的乐于分享的程序猿博主
展开
-
Redis 底层数据结构类型和应用场景举例(2万字长文)
redis 相关底层数据结构、使用命令和场景原创 2022-06-14 16:29:06 · 246 阅读 · 0 评论 -
Redis的高可用方案:主从模式、哨兵模式、集群模式
redis高可用方案原创 2022-03-08 23:50:03 · 3434 阅读 · 0 评论 -
Linux 安装Redis并搭建集群
一、下载、安装过程略1,创建下载目录,下载安装mkdir -p /usr/local/rediscd /usr/local/rediswget http://download.redis.io/releases/redis-stable.tar.gz #下载redistar xvzf redis-stable.tar.gzcd redis-stablemakem...原创 2019-12-30 20:04:22 · 293 阅读 · 0 评论 -
Redis 应用-简单限流应用(每段时间内限制最多某次数)问题
1、方案 利用 redis自增和expire 过期策略该方案存在不是原子性操作的小瑕疵/***time 时间间隔*maxCount 最大次数*/public Boolean checkMethodInvokeLimit(String caller, String method, int time, int maxCount,Integer sysType) { if (StringUtils.isBlank(caller) || StringUtils.isBlank(m原创 2021-01-22 19:59:45 · 659 阅读 · 0 评论 -
Redis的持久化 RDB和AOF
Redis的持久化机制有RDB和AOF两种。RDB(Redis DataBase) 在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是Snapshot快照,它恢复时是将快照文件直接读到内存里。 Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件。整个过程中,主进程是不...原创 2020-03-24 10:14:46 · 200 阅读 · 0 评论 -
Redis Pipeline详解
1、pipeline出现的背景:redis客户端执行一条命令分4个过程:发送命令-〉命令排队-〉命令执行-〉返回结果这个过程称为Round trip time(简称RTT, 往返时间),mget mset有效节约了RTT,但大部分命令(如hgetall,并没有mhgetall)不支持批量操作,需要消耗N次RTT ,这个时候需要pipeline来解决这个问题。二、pepeline的...原创 2020-04-26 13:13:09 · 1231 阅读 · 0 评论 -
Redis缓存穿透,缓存雪崩以及缓存击穿
缓存穿透概念:访问一个不存在的key,缓存不起作用,请求会穿透到DB,流量大时DB会挂掉。缓存穿透的概念很简单,用户想要查询一个数据,发现redis内存数据库没有,也就是缓存没有命中,于是向持久层数据库查询。发现也没有,于是本次查询失败。当用户很多的时候,缓存都没有命中,于是都去请求了持久层数据库。这会给持久层数据库造成很大的压力,这时候就相当于出现了缓存穿透。这里需要注意和缓存击穿...原创 2020-03-23 20:38:34 · 157 阅读 · 0 评论 -
BitMap与 Bloom Filter
一、问题引入 bitMap是位图,其实准确的来说,翻译成基于位的映射,举一个例子,有一个无序有界int数组{1,2,5,7},初步估计占用内存4*4=16字节,这倒是没什么奇怪的,但是假如有10亿个这样的数呢?10亿*4字节/(1024*1024*1024)=3.72G左右(1GB=1024MB 、1MB=1024KB 、1KB=1024B 、1B=8b)。如果这样的一个大的数据做查找...原创 2020-03-30 12:26:58 · 419 阅读 · 0 评论 -
Redis的五种数据类型、方法、底层数据结构
1、字符串string2、列表list3、散列hash4、集合set5、有序集合sorted set字符串string:字符串类型是Redis中最为基础的数据存储类型,是一个由字节组成的序列,他在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据货Json对象描述信息等,是标准的key-value,一般来存字符串,整数和浮点数。Va...原创 2020-04-20 11:33:11 · 586 阅读 · 0 评论 -
如果redis没有设置expire,他是否默认永不过期?
1、如果没有设置有效期,即使内存用完,redis 自动回收机制也是看设置了有效期的,不会动没有设定有效期的,如果清理后内存还是满的,就不再接受写操作。Redis无论有没有设置expire,他都会遵循redis的配置好的删除机制,在配置文件里设置:redis最大内存不足"时,数据清除策略,默认为"volatile-lru"。volatile-lru ->对"过期集合"中的数据采取L...原创 2019-04-01 12:19:53 · 12666 阅读 · 0 评论 -
一致性Hash问题
https://blog.youkuaiyun.com/xlgen157387/article/details/79544524最近有小伙伴跑过来问什么是Hash一致性算法,说面试的时候被问到了,因为不了解,所以就没有回答上,问我有没有相应的学习资料推荐,当时上班,没时间回复,晚上回去了就忘了这件事,今天突然看到这个,加班为大家整理一下什么是Hash一致性算法,希望对大家有帮助!经转载 2018-04-19 14:58:51 · 7213 阅读 · 0 评论 -
Redis 过期策略+淘汰机制策略
前言常见的有两个问题:往 Redis 写入的数据怎么没了?可能有同学会遇到,在生产环境的 Redis 经常会丢掉一些数据,写进去了,过一会儿可能就没了。我的天,同学,你问这个问题就说明 Redis 你就没用对啊。Redis 是缓存,你给当存储了是吧?啥叫缓存?用内存当缓存。内存是无限的吗,内存是很宝贵而且是有限的,磁盘是廉价而且是大量的。可能一台机器就几十个 G 的内存,但是可以有几个 T 的硬盘空间。Redis 主要是基于内存来进行高性能、高并发的读写操作的。那既然内存是有限的,比如 R原创 2021-01-21 11:56:11 · 127 阅读 · 0 评论 -
Redis 主从架构+复制+哨兵
单机的 Redis,能够承载的 QPS 大概就在上万到几万不等。对于缓存来说,一般都是用来支撑读高并发的。因此架构做成主从(master-slave)架构,一主多从,主负责写,并且将数据复制到其它的 slave 节点,从节点负责读。所有的读请求全部走从节点。这样也可以很轻松实现水平扩容,支撑读高并发。Redis replication -> 主从架构 -> 读写分离 -> 水平扩容支撑读高并发Redis replication 的核心机制Redis 采用异步方式复制数据到转载 2021-01-20 15:01:13 · 154 阅读 · 0 评论 -
Redis学习—5种数据结构基本原理-六种底层数据结构
Redis 简介Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的 Web 应用程序。Redis也被作者戏称为数据结构服务器,这意味着使用者可以通过一些命令,基于带有 TCP 套接字的简单服务器-客户端协议来访问一组可变数据结构。(在 Redis 中都采用键值对的方式,只不过对应的数据结构不一样罢了)Redis 的优点以下是 Redis 的一些优点: 异常快- Redis 非常快,每秒可执行大约 110000 次的设置(SET)操作,每秒大...原创 2020-12-15 22:54:40 · 428 阅读 · 0 评论 -
redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?
由于 redis 只使用单核,而 memcached 可以使用多核,所以平均每一个核上 redis 在存储小数据时比memcached 性能更高。而在 100k 以上的数据中,memcached 性能要高于 redis。虽然 redis 最近也在存储大数据的性能上进行优化,但是比起 memcached,还是稍有逊色。redis 的线程模型redis 实际上是个单线程工作模型redis 内部使用文件事件处理器 file event handler,这个文件事件处理器是单线程的,所以 redis 才原创 2021-02-22 15:13:01 · 225 阅读 · 0 评论 -
Redisson:Redis官方提供的构建分布式锁的轮子
锁 : Redission 分布式 锁参考:https://github.com/redisson/redisson/wiki/8.-分布式锁和同步器使用SpringBoot整合Redisson一、引入依赖<dependency> <groupId>org.redisson</groupId> ...转载 2019-04-13 14:48:40 · 478 阅读 · 0 评论