
【数据库-Redis】
文章平均质量分 91
Redis 是一个使用 C 语言编写的,开源的(BSD许可)高性能非关系型(NoSQL)的键值对数据库。 Redis 可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串、列表、集合、散列表、有序集合。
一棵树~
just do it
展开
-
SpringBoot 2.x整合Redis
整合步骤:1.JedisPoolConfig(这个是配置连接池)2.RedisConnectionFactory(这个是配置连接信息,这里的RedisConnectionFactory是一个接口,我们需要使用它的实现类,在SpringD Data Redis方案中提供了一下四种工厂模型)JredisConnectionFactory JedisConnectionFactoryLettuceConnectionFactory SrpConnectionFactory3.RedisTe原创 2021-07-26 16:22:01 · 500 阅读 · 0 评论 -
50 个 Redis 必备知识总结
本文包括:30 个 Redis 基础知识;10个 Redis 架构和运维必懂的知识;Redis 调优、监控知识和10个具体应用难点。 30 个 Redis 基础知识1、Redis支持哪几种数据类型?String、List、...转载 2021-02-25 22:33:09 · 1485 阅读 · 0 评论 -
Redis缓存穿透,雪崩,击穿以及解决方案分析
1、缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。小点的单机系统,基本上用postman就能搞死,比如我自己买的阿里云服务像这种你如果不对参数做校验,数据库id都是大于0的,我一直用小于0的参数去请求你,每次都能绕开Redis直接打到数据库,数据库也查不到原创 2021-01-17 23:38:20 · 416 阅读 · 0 评论 -
Redis集群的5种使用方式
一、常见使用方式Redis 的几种常见使用方式包括:Redis 单副本 Redis 多副本(主从) Redis Sentinel(哨兵) Redis Cluster Redis 自研二、各种使用方式的优缺点1、Redis 单副本Redis 单副本,采用单个 Redis 节点部署架构,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可靠性要求不高的纯缓存业务场景。1.1、优点架构简单,部署方便; 高性价比:缓存使用时无需备用节点(单实例可用性可以用.原创 2021-01-17 17:32:45 · 644 阅读 · 0 评论 -
Redis缓存【监控指标】
1、监控指标参考:https://redis.io/commands/info1.1、性能指标:Performance Name Description latency Redis响应一个请求的时间 instantaneous_ops_per_sec 平均每秒处理请求总数 hi rate(calculated) 缓存命中率(计算出来的原创 2020-12-24 09:27:19 · 1633 阅读 · 0 评论 -
Redis缓存【使用优化】
使用优化主要包含两个层面:业务层面、运维层面。1、业务层面优化建议如下: key的长度尽量要短,在数据量非常大时,过长的key名会占用更多的内存 一定避免存储过大的数据(大value),过大的数据在分配内存和释放内存时耗时严重,会阻塞主线程 Redis 4.0以上建议开启lazy-free机制,释放大value时异步操作,不阻塞主线程 建议设置过期时间,把Redis当做缓存使用,尤其在数量很大的时,不设置过期时间会导致内存的无限增长 不使用复杂度过高的命令,原创 2020-09-23 10:43:52 · 234 阅读 · 0 评论 -
Redis缓存【延迟问题定位】
目录1、使用了复杂度高的命令2、存储大key3、集中过期4、实例内存达到上限5、fork耗时严重6、绑定CPU7、开启AOF8、使用Swap9、网卡负载过高Redis作为内存数据库,拥有非常高的性能,单个实例的QPS能够达到10W左右。但我们在使用Redis时,经常时不时会出现访问延迟很大的情况,如果你不知道Redis的内部实现原理,在排查问题时就会一头雾水。很多时候,Redis出现访问延迟变大,都与我们的使用不当或运维不合理导致的。分析一下Redis在使用过程中原创 2020-09-23 10:31:06 · 673 阅读 · 0 评论 -
Redis缓存【开发规范】
1、设计目标简洁,高效,可维护2、键值设计规范2.1、KEY命名风格规则1【强制】以英文字母开头,命名只能包含英文大、小写字母、数字、英文点号(.)、英文半角冒号(:) 和英文@规则2【强制】KEY长度不超过1024字节规则3【推荐】KEY命名需具有可读性以及可管理性,不该使用含义不清以及特别长的名称2.2、KEY命名规范规则4【强制】命名规范:业务模块名:业务逻辑含义:缓存类型2.2.1、业务模块名规则5【强制】具体功能模块名称,英文字母开头,仅包含字母和数字2原创 2020-09-23 09:55:47 · 586 阅读 · 0 评论 -
Redis性能优化总结
Redis 是基于单线程模型实现的,也就是 Redis 是使用一个线程来处理所有的客户端请求的,尽管 Redis 使用了非阻塞式 IO,并且对各种命令都做了优化(大部分命令操作时间复杂度都是 O(1)),但由于 Redis 是单线程执行的特点,因此它对性能的要求更加苛刻,本文我们将通过一些优化手段,让 Redis 更加高效的运行。本文我们将使用以下手段,来提升 Redis 的运行速度: 缩短键值对的存储长度; 使用 lazy free(延迟删除)特性; 设置键值的过期时间;.原创 2020-06-21 23:32:25 · 622 阅读 · 0 评论 -
Redis 6.0 新特性-多线程连环13问
支持多线程的 Redis 6.0 版本于 2020-05-02 终于发布了,为什么 Redis 忽然要支持多线程?如何开启多线程?开启后性能提升效果如何?线程数量该如何设置?开启多线程后会不会有线程安全问题?多线程的实现原理是怎样的?带着这些疑问,我们来开启 Redis 新特性-多线程连环 13 问。对于 6.0 版本,Redis 之父 Antirez 在 RC1 版本发布时(2019-12-...转载 2020-05-07 19:45:06 · 462 阅读 · 0 评论 -
Jedis常见异常汇总
Jedis虽然使用起来比较简单,但是如果不能根据使用场景设置合理的参数(例如连接池参数),不合理的使用一些功能(例如Lua和事务)也会产生很多问题,本文对这些问题逐个说明:详细目录:一、redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool 二、r...转载 2019-04-03 23:50:41 · 392 阅读 · 0 评论 -
(1)linux单机版redis安装
目录:1、Redis简介2、Redis安装2.1、安装gcc编译环境2.2、下载最新版redis:wget2.3、解压缩redis2.4、编译:make2.5、指定安装目录执行安装2.6、启动redis2.7、查看redis进程2.8、关闭redis2.9、redis客户端1.10、设置redis密码(测试环境忽略,生产环境必须配置)1、Redi...原创 2019-02-12 11:46:13 · 344 阅读 · 1 评论 -
Redis集群搭建
目录:1、Redis 集群简介2、随随便便搭建一个集群2.1、创建文件夹2.2、复制执行脚本2.3、复制一个新 Redis 实例2.4、再复制出五个新 Redis 实例2.5、修改 9002-9006 的 redis.conf 文件3、其实我们已经几乎搭建好了3.1、启动 9001-9006 六个节点3.2、随便找一个节点测试试3.3、安装集群所需软件...转载 2019-01-31 23:57:32 · 273 阅读 · 0 评论 -
Redis学习手册
1、Redis学习手册(开篇)一、简介二、Redis的优势三、目前版本中Redis存在的主要问题四、和关系型数据库的比较五、如何持久化内存数据2、Redis学习手册(String数据类型)一、概述二、相关命令列表三、命令示例3、Redis学习手册(List数据类型)一、概述二、相关命令列表三、命令示例四、链表结构的小技巧4、Redis学习手册(Set数据类型)一、概述二...转载 2019-01-27 14:09:24 · 275 阅读 · 0 评论 -
redis反序列化异常:org.springframework.data.redis.serializer.SerializationException
1、日志如下org.springframework.data.redis.serializer.SerializationException: Cannot deserialize; nested exception is org.springframework.core.serializer.support.SerializationFailedException: Failed to d...原创 2018-12-19 16:19:30 · 17006 阅读 · 0 评论 -
Linux下redis详细安装
下载地址http://redis.io/download安装步骤:1、首先需要安装gcc,把下载好的redis-3.0.0-rc2.tar.gz 放到linux /usr/local文件夹下2、进行解压 tar -zxvf redis-3.0.0-rc2.tar.gz3、进入到redis-3.0.0目录下,进行编译 make4、进入到src下进行安装 make install 验...原创 2018-09-29 10:39:25 · 217 阅读 · 0 评论