楔子 在某些极端情况下,软件为了能正常运行会做一些保护性的措施,比如运行内存超过最大值之后的处理,以及键值过期之后的处理等等,都属于此类问题,而专业而全面的回答这些问题恰好是一个工程师所具备的优秀品质。 那么下面我们就来探讨一下。 Redis内存用完了会怎么办? Redis 的内存用完指的是 Red ...
分类:
其他好文 时间:
2020-07-15 01:01:58
阅读次数:
105
这次项目有一个需求,就是右上角一个 气泡弹窗 popover ,当会员状态是已过期的时候,背景图成白色渐变,如果是未过期,就是黑色渐变。 于是就想通过设置不同的 status 值来添加不同的 className , 以设置 .ant-popover-inner 的样式来设置背景图, 当然,这样做有一 ...
分类:
其他好文 时间:
2020-07-14 16:51:04
阅读次数:
193
先拿 setnx 来争抢锁,抢到之后,再用 expire 给锁加一个过期时间防止锁忘记了 释放。 这时候对方会告诉你说你回答得不错,然后接着问如果在 setnx 之后执行 expire 之前进程意外 crash 或者要重启维护了,那会怎么样? 这时候你要给予惊讶的反馈:唉,是喔,这个锁就永远得不到释 ...
分类:
其他好文 时间:
2020-07-14 16:24:40
阅读次数:
96
####前言:如果同步过程中发现数据量不一致,先不要断开主从,分析一下每日进redis的数据量是否很大,以及键的过期时间 redis会在后台,每秒10次的执行如下操作: 随机选取100个key校验是否过期,如果有25个以上的key过期了,立刻额外随机选取下100个key。也就是说,如果过期的key不 ...
分类:
其他好文 时间:
2020-07-13 11:24:03
阅读次数:
66
#用户属性修改 usermod 命令可以修改用户属性 ##格式: usermod [OPTION] login 常见选项: -u UID: 新UID -g GID: 新主组 -G GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使 用 ...
分类:
系统相关 时间:
2020-07-12 22:22:11
阅读次数:
95
Linux 教程:兄弟连的Linux教程 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思 ...
分类:
系统相关 时间:
2020-07-12 20:47:02
阅读次数:
95
是一种 key value形式的非关系型数据库-nosql 经常查询并且不经常修改的数据。一般都放在redis中。 支持的功能: 1.多种数据结构,string list hash set zset 2.支持持久化,内存存储、硬盘存储 3.过期时间,事务。 ...
分类:
其他好文 时间:
2020-07-12 18:56:33
阅读次数:
70
1.缓存雪崩 缓存雪崩是指缓存中数据大批量到过期时间,而查询数据量巨大,引起数据库压力过大甚至down机 具体原因: 1.大量缓存数据同时过期 2.突然暴增的单点数据访问量 解决方案: 缓存数据的过期时间设置随机,防止同一时间大量数据过期现象发生,对数据进行标签,区分冷数据/热数据,设置热点数据永远 ...
分类:
其他好文 时间:
2020-07-12 16:34:16
阅读次数:
58
##Key的过期策略 Redis的Key有3种过期删除策略,具体如下: ###1. 定时删除 原理:在设置键的过期时间的同时,创建一个定时器(timer),让定时器在键的过期时间来临时,立即执行对键的删除操作 优点:能够很及时的删除过期的Key,能够最大限度的节约内存 缺点:对CPU时间不友好,如果 ...
分类:
其他好文 时间:
2020-07-12 15:04:22
阅读次数:
69
介绍几个常用的redis命令: SET 命令 set key value 设置指定 key 的值为 value。 如果 key 已经存储其他值, SET 就覆写旧值,且无视类型。 127.0.0.1:6379> set testSetKey aaa OK 127.0.0.1:6379> get te ...
分类:
其他好文 时间:
2020-07-12 11:57:06
阅读次数:
70