redis&缓存
琅琊山二当家
这个作者很懒,什么都没留下…
展开
-
Redis - 使用规范
一:Redis 概述 - Redis 是内存级别的数据库,在一台普通电脑上,Redis 3.X 便可以读取 10 万个键值对(现在的Redis官方版本已经更新到了5.X,性能会更好)。二:关于Redis 和 Memcached 的性能问题。 - 理论上 Memcached 为多线程模型,会比 Redis 性能好。 - 但是,Redis的性能已经足够好,在大部分场合下性能...转载 2019-11-12 15:29:41 · 246 阅读 · 0 评论 -
Redis RedisCluster Spring整合
转载: http://blog.csdn.net/fengyong7723131/article/details/52995592前言:在上一篇文章中,用了jedisCluster来做redis集群的客户端,这一篇我们介绍一下spring-data-redis给我们提供的操作redis集群的redisTemplate,着急用的可以跳过1,直接看2准备工作:jdk版本:1.8junit版本:4.12...转载 2018-03-06 15:12:09 · 548 阅读 · 0 评论 -
RedisTemplate和StringRedisTemplate的区别
二者是独立的 各有自己的工作空间使用各自插入的数据 只有各自看到 代码如下 使用xshell 连接redis插入的数据 等同于使用StringRedisTemplate操作redis @Autowired RedisTemplate redisTemplate ; @Autowired StringRedisTemplate stringRedisTemp...原创 2018-03-09 16:50:28 · 4920 阅读 · 2 评论 -
cluster-node-timeout redis节点宕机被发现的时间 从节点接替主节点的时间
cluster-node-timeout redis节点宕机被发现的时间 也是主节点服务宕机 从节点顶替上来需要的时间把cluster-node-timeout参数设置一个较小的值,比如6000(6秒)。这个参数建议不要设置太小或者太大 。默认15s大概 默认值即可 或者10s 也不错 我觉着 ...原创 2018-03-15 18:29:26 · 3803 阅读 · 0 评论 -
Could not retrieve cluster information. CLUSTER NODES returned with error.
org.springframework.data.redis.ClusterStateFailureException: Could not retrieve cluster information. CLUSTER NODES returned with error.- 10.166.15.36:7001 failed: Hostname must not be empty or null....原创 2018-03-15 15:32:01 · 18522 阅读 · 0 评论 -
细说Redis监控和告警
对于任何应用服务和组件,都需要一套完善可靠谱监控方案。尤其redis这类敏感的纯内存、高并发和低延时的服务,一套完善的监控告警方案,是精细化运营的前提。本文分几节,细说Redis的监控和告警:1.Redis监控告警的价值2.Redis监控的数据采集3.Redis告警策略4.基于Open Falcon的Redis监控告警方案Redis监控告警的价值Redis监控告警的价值对每个角色都不同,重要的几个...转载 2018-02-28 16:46:01 · 2840 阅读 · 0 评论 -
redis动态扩展内存
需求:将redis内存从1G扩展到3G,不中断服务转载: 1、打开客户端# redis-cli -p 63912、查看当前值redis 127.0.0.1:6391> config get maxmemory1) "maxmemory"2) "1073741824"3、设置内存为3Gredis 127.0.0.1:6391> config set maxmemory 3221225...转载 2018-02-08 16:19:01 · 959 阅读 · 1 评论 -
常见JedisConnectionException异常分析
转载:http://blog.csdn.net/fachang/article/details/7984123最近项目开发中用到了Redis, 选择了官网推荐的java client Jedis。Redis常用命令学习:http://redis.io/commandsRedis官方推荐Java客户端Jedis(包含了所有Redis命令的实现):https://github.com/xetorthi...转载 2018-03-07 14:04:53 · 1181 阅读 · 0 评论 -
[ERR] Node 172.168.63.202:7001 is not empty. Either the nodealready knows other nodes (check with CL
转载 :http://www.cnblogs.com/huxinga/p/6644226.html关于启动redis集群时:[ERR] Node 172.168.63.202:7001 is not empty. Either the nodealready knows other nodes (check with CLUSTER NODES) or contains some的问题解决办法:1...转载 2018-02-09 16:17:58 · 933 阅读 · 0 评论 -
Redis 集群搭建
转载:http://blog.csdn.net/jlh912008548/article/details/512263801.Redis 安装在安装Redis 集群前。应该安装Redis.Redis 的详细安装,请浏览 http://blog.csdn.net/jlh912008548/article/details/512250572.Redis 集群介绍2.1 redis-cluster架构图...转载 2018-02-09 15:59:12 · 330 阅读 · 0 评论 -
如何解决秒杀的性能问题和超卖的讨论
最近业务试水电商,接了一个秒杀的活。之前经常看到淘宝的同行们讨论秒杀,讨论电商,这次终于轮到我们自己理论结合实际一次了。 ps:进入正文前先说一点个人感受,之前看淘宝的ppt感觉都懂了,等到自己出解决方案的时候发现还是有很多想不到的地方其实都没懂,再次验证了“细节是魔鬼”的理论。并且一个人的能力有限,只有大家一起讨论才能想的更周全,更细致。好了,闲话少说,下面进入正文。转载 2017-08-19 15:32:11 · 554 阅读 · 0 评论 -
Memcached 和 Redis 分布式锁方案
分布式缓存,能解决单台服务器内存不能无限扩张的瓶颈。在分布式缓存的应用中,会遇到多个客户端同时争用的问题。这个时候,需要用到分布式锁,得到锁的客户端才有操作权限。Memcached 和 Redis 是常用的分布式缓存构建方案,下面列举下基于Memcached 和 Redis 分布式锁的实现方法。Memcached 分布式锁Memcached 可以使用 add 命令,该命令只有KEY不存转载 2017-08-19 14:46:21 · 3380 阅读 · 0 评论 -
Spring redis key乱码
<bean id="stringRedisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate" p:connectionFactory-ref="redisConnectionFactory" />原创 2017-07-21 15:44:36 · 764 阅读 · 0 评论 -
Redis Zrevrank 命令
Redis Zrevrank 命令 Redis 有序集合(sorted set)Redis Zrevrank 命令返回有序集中成员的排名。其中有序集成员按分数值递减(从大到小)排序。排名以 0 为底,也就是说, 分数值最大的成员排名为 0 。使用 ZRANK 命令可以获得成员按分数值递增(从小到大)排列的排名。语法redis Zrevrank 命转载 2017-07-20 23:04:27 · 735 阅读 · 0 评论 -
Redis 有序集合(sorted set)
Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295转载 2017-07-20 22:42:42 · 377 阅读 · 0 评论 -
基于spring的redisTemplate的缓存工具类
1、spring相关配置如下:Xml代码 bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"> property name="maxIdle" value="${redis.pool.maxIdle}" /> property nam转载 2017-07-20 17:16:08 · 3183 阅读 · 0 评论 -
redis里能不能针对set数据的每个member设置过期时间?
redis里能不能针对set数据的每个member设置过期时间?[点击该链接查看原贴地址]想要使用redis的set数据集记录一组数据,每一条数据的过期时间都是30天,但这些数据不是同一天加进去的。也就是说这组数据不会在同一时间过期。这样就不能对set的key进行过期时间设定,因为一旦设置了key的过期时间,所有的member会同时过期。但是在redis的语法里又没有发现针对每个mem转载 2017-07-20 17:11:32 · 7301 阅读 · 0 评论 -
Spring Boot使用Spring Data Redis操作Redis(单机/集群)
转自:https://www.cnblogs.com/EasonJim/p/7805665.htmlSpring Boot简化了Spring Data Redis的引入,只要引入spring-boot-starter-data-redis之后会自动下载相应的Spring Data Redis和Jedis客户端,可以减少版本这块的冲突,当然,如果要引入别的版本也是可以的。版本控制全部交由Parent...转载 2018-03-09 16:58:58 · 2061 阅读 · 0 评论 -
jedis : NoSuchMethodError: org.springframework.util.Assert.isTrue(ZLjava/util/function/Supplier
警告: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connectionFactory' defin...原创 2018-03-06 15:08:58 · 21977 阅读 · 5 评论 -
CompletableFuture parallelStream并行流使用的一个注意事项
并行流 就是多线程 使用的威力大,出问题的概率也大,使用时候要谨慎,一旦出问题,相对来说不好排查错误这里就说一个遇到的问题: 不要再每个并行流分别计算,这个流处理需要的公共变量,可以在外部计算好,传进去。修改前:上图函数具体实现修改后:类似的一个修改最后给出具体获取List<String> catServiceNa...原创 2019-06-26 15:47:14 · 1270 阅读 · 0 评论 -
redis cluster 全部宕机后重启会自动恢复集群状态
昨天 测试环境上3主3从的redis节点集群 虚拟机3台全部宕机(3主3从交叉部署在3台虚机上)重新启动各个节点发现 集群自动恢复了 本来以为要重新使用create 命令猜测集群是根据node的主从信息文件自己恢复的 利用心跳检测 节点关系的文件node-7001.conf197d2e50893487f54d3cbbf07f746abc1fa08318 10.166.1...原创 2018-07-03 10:47:16 · 12485 阅读 · 0 评论 -
redis cluster 集群的一些操作命令
check命令[root@ysmcrouter15a35 src]# ./redis-trib.rb check 10.166.15.35:7001>>> Performing Cluster Check (using node 10.166.15.35:7001)S: b98f368b250360dbb4d74a1b831d7fa939ea4f8d 10.166.15...转载 2018-07-03 10:16:40 · 8229 阅读 · 0 评论 -
redis-desktop-manager 的简单使用
flyer说明 这个工具查询redis集群的时候 连接某个节点a 可以查所有节点上key的信息工具不错 使用方法参考下面 转载的文章 转载:https://www.cnblogs.com/godtrue/p/7260562.html1:安装比较简单,所有软件几乎都一样(下载、安装)我就从安装好后,怎么玩记录吧!如下图,双击对应的图标就能打开此软件了2-1:连接redis服务器的方式之一——导入对...转载 2018-07-02 10:46:59 · 3361 阅读 · 0 评论 -
处理类似于12306订单30分钟自动取消?
我们的QQ群606700249有人提到 如下问题 处理类似于12306订单30分钟自动取消? 做个redis hash结构的 ( 用户 id, 订单号id, value是个对象obj ) , 对象包含订单的信息,这个对象加一个失效日期字段,每次查询的时候发现这条记录 失效了 ,插入msyql 中, redis里面删掉这个记录 (或者不删除,修改obj订单状态的字段)这样就不需...原创 2018-05-24 11:30:39 · 5289 阅读 · 6 评论 -
Redis (error) NOAUTH Authentication required
redis cluster使用命令 修改配置文件遇到Redis (error) NOAUTH Authentication required解决办法是 加入密码验证 (因为刚刚配置了密码 需要认证) 密码一定要输入正确原创 2018-05-14 10:39:49 · 520 阅读 · 0 评论 -
Redis缓冲区设置
转载:https://www.cnblogs.com/Dhouse/p/8295995.html对于Redis服务器的输出(也就是命令的返回值)来说,其大小通常是不可控制的。有可能一个简单的命令,能够产生体积庞大的返回数据。另外也有可能因为执行了太多命令,导致产生返回数据的速率超过了往客户端发送的速率,这是也会导致服务器堆积大量消息,从而导致输出缓冲区越来越大,占用过多内存,甚至导致系统崩溃。所幸...转载 2018-05-18 11:00:06 · 1167 阅读 · 0 评论 -
Redis集群故障 cluster-node-timeout的慢查询导致主从切换
转载:http://www.jb51.net/article/125764.htm故障表象:业务层面显示提示查询redis失败集群组成:3主3从,每个节点的数据有8GB机器分布:在同一个机架中,xx.x.xxx.199xx.x.xxx.200xx.x.xxx.201redis-server进程状态:通过命令ps -eo pid,lstart | grep $pid,发现进程已经持续运行了3个月发生...转载 2018-05-18 10:11:52 · 3289 阅读 · 1 评论 -
redis cluster 一个问题:双master不能在一个虚拟机/物理机上
标题说的有点不够明确 :双master不能在一个虚拟机上,指的是三主三从结构,并且一个虚机部署一个master 和一个slave 问题如下 :6台虚机(每台3g内存),做三主三从结构 原因如下: 因为redis cluster 官方的侦听节点fail的策略是: 通过集群中超过半数的master节点检测失效时才生效. 所以使用三台虚机来搭建会出现一定问题: 比如三台虚拟交叉部署,...原创 2018-05-17 14:38:50 · 1787 阅读 · 2 评论 -
MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk
redis节点所在服务器内存不够了 fork时候 转载 :https://www.cnblogs.com/qq78292959/p/3994349.html今天第二次遇到Redis “MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk”的问题。这个错误信息是R...转载 2018-05-03 16:42:22 · 191 阅读 · 0 评论 -
Redis集群性能测试工具redis-benchmark
使用本文之前 比如集群在某个机器上7001端口有redis节点记得使用ip 端口 比如如下redis-benchmark -h 10.166.15.36 -p 7001 -n 100000 -q script load "redis.call('set','foo','一二三四五六七八九十')"./redis-benchmark -h 10.166.15.36 -p 7001 -q -n 1...转载 2018-04-25 18:20:11 · 11011 阅读 · 1 评论 -
如何查看redis占用内存大小
参考 :https://jingyan.baidu.com/article/2c8c281dbd079f0008252a0f.htmlhttps://blog.csdn.net/qq_36663951/article/details/78340303redis缓存固然高效,可是它会占用我们系统中宝贵的内存资源,特别是当我们的项目运行了一段时间后,我们需要看一下redis占用了多少内存,那么可以用“...转载 2018-05-02 18:13:07 · 4428 阅读 · 0 评论 -
redis中与清空数据有关的命令
转载 : http://ju.outofmemory.cn/entry/330999redis中与清空数据有关的命令有3个,分别是: FLUSHALL , FLUSHDB , SCRIPT FLUSH 。FLUSHALL [ASYNC]表示删除 所有DB 中的 所有数据 。默认是同步操作,选项 ASYNC 表示异步,即清空操作在一个新的线程中进行,不会阻塞主线程。$ redis-cli -h 12...转载 2018-05-02 17:56:16 · 11362 阅读 · 1 评论 -
redis五大类型用法
Redis五大类型:字符串(String)、哈希/散列/字典(Hash)、列表(List)、集合(Set)、有序集合(sorted set)五种Controller:@Resource RedisTemplate<String, String> redisTemplate;总括:redisTemplate.opsForValue();//操作字符串redisTemplate.o...转载 2018-04-23 14:05:01 · 355 阅读 · 0 评论 -
【问题追查】记海外aws上redis-cluster单实例抖动问题追查
转载: https://www.cnblogs.com/taoxinrui/p/8231593.html【背景】 公司在海外的业务没有自建机房,而是使用了aws的服务,型号是r4.4xlarge。 但是,部署在aws上的redis集群,经常遇到某个实例耗时抖动比其他实例厉害,但是cpu、mem、网络等指标都较低的情况。 于是开启了一场漫长的问题定位之路。【...转载 2018-04-08 13:18:01 · 1079 阅读 · 0 评论 -
《redis学习》-- 缓存穿透和缓存雪崩的预防和解决
redis缓存穿透和缓存失效的预防和解决缓存穿透:认识缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时需要从数据库查询,查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询,造成缓存穿透。解决办法:对所有可能查询的参数以hash形式存储,在控制层先进行校验,不符合则丢弃。还有最常见的则是采用布隆过滤器,将转载 2017-07-20 16:36:12 · 623 阅读 · 0 评论 -
Spring-data-redis 第一天(操作list和hash)
1.Redis 这就不必哆嗦了,Redis 支持丰富的数据类型,String ,List,Sets ,Sorted Sets,Hashes,这就可以看出Java 操作Redis就要针对各种类型都有自己的操作。这里自己学习的是Spring-data-redis 中基于Jedis connection的不过在RedisTemplate 中 可不管这些,全部都是 connect 的操作,所以 我...转载 2017-07-20 16:15:12 · 7506 阅读 · 0 评论 -
tomcat7 redis session 共享
针对之前的nginx+tomcat的负载均衡机制,因为会出现session丢失的问题,特研究了下redis的session共享;(如果想搭建本环境可从上一篇开始,涉及到nginx的环境搭建http://blog.csdn.net/qq584852076/article/details/46469141)下载JDK7、tomcat7以备后续测试;一、下载tomcat-redis-se转载 2016-06-28 18:08:04 · 477 阅读 · 0 评论 -
一个分布式Java Web Session
https://github.com/hengyunabc/xsession转载 2016-06-28 17:29:46 · 484 阅读 · 0 评论 -
Spring-data-redis: 事务与pipeline
本文主要展示如何使用spring-data-redis编写事务和pipeline: 1.配置文件: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="h...转载 2016-05-23 00:31:06 · 8074 阅读 · 0 评论 -
Spring-data-redis: pub/sub消息订阅
Redis中pub/sub特性,可以用来实现类似与JMS的“topic”功能,只不过这些消息无法被持久化而已。spring-data-redis组件中对pub/sub提供了类似JMS的编程模式,我们通过实例来展示如何使用。 需要注意的是,在redis中消息的订阅端(subscribe)需要独占链接,那么消息接收将是阻塞的。 代码实例中,使用了“连接池”/“消息异步接受”转载 2016-05-23 00:28:51 · 4749 阅读 · 0 评论