随笔分类 - Java Redis
摘要:Redis Sentinel翻译文档(2015.12.25)[toc] Redis Sentinel介绍Redis Sentinel 为Redis提供了高可用的实现。通俗来说就是你可以部署一套无需人为干预即可防灾的Redis环境。 RS同时为客户端提供了其他诸如监控,通知的功能。从全局来说RS的功能...
阅读全文
摘要:在多节点的项目中,经常要涉及到某些方法加锁的控制。而这个时候,简单易用的synchronized已经不能满足多节点的部署结构。之前在项目中,用的比较多的是数据库的更新锁:for udpate。但是这个有个缺点,就是对于本来就容易出现瓶颈的数据库,造成了更大的压力。同时,如果是锁表的语句,同时表数据量...
阅读全文
摘要:项目中有些业务方法希望在有缓存的时候直接从缓存获取,不再执行方法,来提高吞吐率。而且这种情况有很多。如果为每一个方法都写一段if else的代码,导致耦合非常大,不方便后期的修改。思来想去,决定使用自动注解+Spring AOP来实现。直接贴代码。自定义注解类:package com.ns.anno...
阅读全文
摘要:之前在介绍Spring Redis进行存储的时候,都是通过RedisTemplate中的defaultSerializer,即JdkSerializationRedisSerializer。通过Jdk的序列化比较简单,但是有时候线上调试的时候通过控制台查看,完全看不出来存储了什么东西。而且在空间占用...
阅读全文
摘要:摘要:主要针对Dao层的一些数据库查询的操作,数据实时性不强,直接加入缓存。当缓存中有的时候,就使用缓存中的数据。这样的方法,最终仅仅使用一个注解实现。对于之前的hibernate二级缓存使用,比较陌生。比如是否支持Redis或者可以自己开发支持。是否支持针对部分需要加入缓存的方法配置,而不是所有的...
阅读全文
摘要:目前我所知道的Redistemplate里面,我没有使用到的就是管道。这个可以进行批量的读写。类似于jdbc的batch。还有就是Redis的集群部署。但是由于我业务里没有这种需求,所以没有使用无法给大家进行讲解。遇到的问题有:1.序列化器。由于我是配置了全局唯一一个RedisTemplate,所以...
阅读全文
摘要:对于Redis脚本使用过的同学都知道,这个主要是为了防止竞态条件而用的。因为脚本是顺序执行的。(不用担心效率问题)比如我在工作用,用来设置考试最高分。如果还没有用过的话,先去看Redis脚本的介绍,发送脚本,缓存脚本,发送sha1执行脚本,以及基本的lua脚本的语法。1. Redis脚本的使用场景在...
阅读全文
摘要:上一篇说了RedisTemplate对注解事务的支持,以及提供的序列化器。事务需要开启enableTransactionSupport,然后使用@transactional注解,里面直接通过回调的connection,就不需要自己进行multi和exec的事务开启提交了。但是通过回调去获取conne...
阅读全文
摘要:上一篇文章我们讲解了RedisTemplate的基本使用,通过RedisCallback来获得connection,然后去操作Redis。网上的教程,大部分也都是这样的操作。这个类似于HibernateTemplate里面提供的executeWithNativeSession方法,是Java中的一种...
阅读全文
摘要:关于spring redis框架的使用,网上的例子很多很多。但是在自己最近一段时间的使用中,发现这些教程都是入门教程,包括很多的使用方法,与spring redis丰富的api大相径庭,真是浪费了这么优秀的一个框架。这里,我们就对比之前对spring orm中对hibernate的使用,来理解使用spring redis的使用。(本文章不做redis基本命令使用的讲解)
阅读全文
浙公网安备 33010602011771号