缓存框架
水田如雅
不生产代码,只是代码的搬运工
展开
-
redis——基于redission的延时队列
private RBlockingQueue<TeacherAuthProgressContext> blockingQueue; private RDelayedQueue<TeacherAuthProgressContext> delayedQueue;初始化: blockingQueue = client.getNativeClient().getBlockingQueue(queueName); if (blockingQueue == n...原创 2021-12-21 16:06:03 · 1323 阅读 · 0 评论 -
缓存数据库双写不一致问题处理
我们的数据库操作中,一般会封装同步修改缓存的写法,但是这是一个两步操作,有可能带来缓存数据库数据不一致的问题。使用redisson提供的分布式锁解决参考:基于redis的分布式锁在我们之前加锁的逻辑中,对于读写的一段逻辑进行加锁,但是在高并发的场景中,有可能出现同一时刻,锁竞争过多,有可能有的线程会经历过长时间的等待。解决加锁的这种问题,回顾下我们的java提供的一些线程安全的类,可以为我们提供如下解决思路:数据分段将数据通过不同的一个组值,分成多段进行加锁,减少竞争发生时候,等待的线程数.原创 2021-12-05 14:27:21 · 1382 阅读 · 0 评论 -
Memcached在.net中的应用
一,MemCached下载服务端下载:http://memcachedproviders.codeplex.com/客户端下载:http://sourceforge.net/p/memcacheddotnet/code/HEAD/tarball?path=/trunk 二,服务端的安装及配置1) 解压缩文件到c:\memcached(也可以选择任意位置)2) 命令行输入 'c原创 2015-07-02 23:36:08 · 2936 阅读 · 19 评论 -
缓存框架——Redis(一)
一,服务端的安装 服务端我用的是redis64-2.6.12.1,版本比较低,因为2.8的都安不上,可能是因为自己电脑是windows的原因吧。 解压完成之后, 进入到这个文件夹里面,输入:redis-server.exe redis.conf,服务开启成功之后,会这样子: 二,客户端程序的安装原创 2015-07-03 20:48:03 · 2326 阅读 · 18 评论 -
MyBatis Review——整合ehcache
ehcache是一个分布式缓存框架,是hibernate中二级缓存的默认实现。 一,整合的思路 mybatis提供了一个cache接口,如果要实现自己的缓存逻辑,实现cache接口开发即可: mybatis和ehcache整合:mybatis和ehcache的整合包中提供了一个cache接口的实现类: 1,加入jar2,整合ehcache原创 2016-05-24 21:13:38 · 5450 阅读 · 0 评论 -
Guava——LoadingCache demo
最近看缓存部分代码,思路是这样的:1,读写缓存操作,都是通过loadingcache来操作redis; 2,定时job轮询DB数据,定时刷新redis; 先来看下简单的LoadingCache使用:/** * \* Created: liuhuichao * \* Date: 2018/4/2 * \* Time: 下午9:52 * \* Description:loading...原创 2018-04-02 23:24:06 · 1424 阅读 · 0 评论 -
Guava——LoadingCache定时更新缓存
/** * \* Created: liuhuichao * \* Date: 2018/4/2 * \* Time: 下午11:33 * \* Description:通过轮询安全更新缓存 * \ */public class RefreshCacheTest { private ScheduledExecutorService scheduledExecutorServ...原创 2018-04-02 23:52:33 · 9845 阅读 · 3 评论 -
Redis——实现悲观锁
抽象类:/** * \* Created: liuhuichao * \* Date: 2018/6/5 * \* Time: 上午10:35 * \* Description: redis 锁抽象类 * \ */public abstract class AbstractLock implements Lock{ protected volatile boolea...原创 2018-06-27 22:35:48 · 2301 阅读 · 1 评论 -
Redis——实现乐观锁
核心代码: try { Thread.sleep((int)Math.random()*5000); } catch (InterruptedException e) { e.printStackTrace(); } while (true){ ...原创 2018-06-27 22:42:54 · 1949 阅读 · 0 评论