Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据保存在磁盘上的数据库要快很多。但是 Redis 也会发生延迟时,这是就需要我们对其产生原因有深刻的了解,以便于快速排查问题,解决 Redis的延迟问题 一条命令执行过程 在本文场景下,延迟 (latency) 是指从客户端发送命令到客户端接收到命令返回值的时间间隔。所以我们先来看一下 Redis 一条命令执行的步骤,其中每个步骤出问题都可能导致高延迟。 上图是 Redis 客户端发送一条命令的执行过程示意图,绿色的是执行步骤,而蓝色的则是可能…

2021年4月7日 0条评论 21点热度 阅读全文

(一)前言 最近我做了个某大学智慧园区信息化的项目,当中需要用到redis双机热备,主备同步等,结合实际的运用,以及近期对redis的学习,利用业余实际写了个系列笔记,希望各位大佬多多指点,写的不对的地方欢迎指正,共同进步!本系列会持续更新,欢迎大家收藏。 (二)目录 Redis入门学习笔记(一)redis安装环境配置 Redis入门学习笔记(二)redis数据结构 Redis入门学习笔记(三)windows redis主从同步 Redis入门学习笔记(四)windows redis哨兵机制 Redis入门学习笔记…

2021年4月7日 0条评论 33点热度 阅读全文

开发微信小程序,前提是申请到一个 appId 并拿到 appSecret ,并在微信公众平台配置好小程序对应的服务器域名。 小程序可以通过两种方式获取到用户信息,并且获取到信息之后,推荐直接存到小程序的全局变量中,后续直接在全局变量中读取,无需在重新获取。 方法一: 使用 appId 新建小程序模板,在创建时,勾选中“建立普通快速启动模板”。创建成功后,在 pages/index/index.js文件中可以看到如下代码: if (app.globalData.userInfo) { this.setData({ u…

2021年4月7日 0条评论 33点热度 阅读全文

Redis集群模式与代理模式 为了解决redis主从复制或者哨兵模式一个实例存储全量的数据,内存空间可能不足的问题,需要对数据进行分区(Partitioning)。 分区的实现方式 客户端分区:例如原来一个商城的所有缓存都存在一个redis,现在按模块进行区分,订单模块放到一个redis,支付模块放到一个redis。 代理分区:客户端将请求发送给代理端,代理根据一致性哈希算法算出key对应在哪个redis实例上,然后将请求发送给对应的redis实例,最后将结果返回给客户端。 查询路由:将请求随机发给一个redis实…

2021年4月7日 0条评论 13点热度 阅读全文

同系列一:Redis 缓存数据库入门教程 同系列二:Redis-通用指令篇 同系列三:Redis-RDB-AOF持久化篇 文章目录 Redis-事务篇 Redis简介 什么是事务(Transaction)? 特征 Redis中的事务? 事务的基本操作 事务的工作流程 事务操作注意事项 事务回滚 Redis——锁 watch 命令 unwatch 命令 分布式锁 setnx(set if not exists)实现 改良1 setnx + expire 改良2 set扩展参数 其他文章 Redis-事务篇 Redis…

2021年4月7日 0条评论 24点热度 阅读全文

最近针对Redis的基本数据结构、持久化机制、事务、主从复制和分布式锁等知识点做了系统的学习和整理,现对本次学习Redis的过程做一次思考和总结。 为什么要使用nosql(not only sql) 这个问题我们站在互联网技术中常提到的"高并发"和"高可用"关键词来思考这个问题,我是这样子理解的: 传统的关系型数据库,比如单机的MySQL的QTS只有2000~3000左右,在一些大并发的场景下,比如618活动、双11活动等场景下,数据库根本就扛不住这么大的并发量,轻而易举的就将数据库打挂了,从而导致了服务不可用。 …

2021年4月7日 0条评论 12点热度 阅读全文

redis集群监控(redis-stat) 本文来自互联网,由本人亲测,可行 ps:亲测,是这样写,可用,时间=2020-02-12 14:45   1. 环境 redis集群版本: 3.2.1 CentOS Linux release 7.2.1511 (Core) 2. 安装包 eventmachine-1.2.3.gem、redis-stat-0.4.14.gem、thin-1.5.1.gem、daemons-1.1.9.gem   gem下载网站:https://rubygems.org…

2021年4月7日 0条评论 7点热度 阅读全文

@Test public void testPipLine(){ //根据hashKey依次获取所有value List<Object> executeResult = redisTemplate.executePipelined(new RedisCallback<Object>() { @Override public Object doInRedis(RedisConnection connection) throws DataAccessException { //业务操作 for …

2021年4月7日 0条评论 9点热度 阅读全文

上一篇:Redis-数据类型篇 文章目录 Redis-通用指令篇 Redis简介 Redis——通用命令操作 key是什么? 针对key的一些常用操作? 1. 对于key的自身状态控制的相关操作: 2. 对于key的时效性相关操作: 3. 对于key的查询检索相关操作: 4. 对于key的其他操作: Redis-通用指令篇 Redis简介 Redis是C语言开发的一个高性能键值对(key -value) 内存数据库,可以用作数据库,缓存和消息中间件等。 特点 作为内存数据库,它的性能非常优秀,数据存储在内存当中,读…

2021年4月7日 0条评论 10点热度 阅读全文

文章目录 Redis-删除策略以及逐出(淘汰)策略篇 Redis简介 删除策略以及逐出策略 什么是过期数据? Redis提供的删除策略 定时删除 惰性删除|被动删除 定期删除|主动删除 删除策略比对 逐出(淘汰)策略 介绍 逐出(淘汰)算法策略及其相关配置 1. 检测带有时效性的数据进行淘汰(**`第i个数据库的expire空间`**) 2. 检测全库的数据进行淘汰(**`第i个数据库的dict空间`**) 3. 不进行淘汰--**`NO_EVICTION`** Redis-删除策略以及逐出(淘汰)策略篇 Redi…

2021年4月7日 0条评论 4点热度 阅读全文