![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
weixin_40455124
这个作者很懒,什么都没留下…
展开
-
注意Eclipse 下variables视图引发的代码执行动作
开始看Redisson的源码,跟踪的时候被下面的代码迷惑了public RedissonObject(Codec codec, CommandAsyncExecutor commandExecutor, String name) {this.codec = codec;this.name = name;this.commandExecutor = commandExecutor;}th...原创 2019-07-02 07:55:16 · 263 阅读 · 0 评论 -
Redisson启动及服务、命令模式分析
以AtomicDoubleExamples为入口,初步分析redisson启动及命令、服务Redisson 启动的主类为org.redisson.Redisson, 启动主要是初始化connection pool,还有两个比较少用的evictionScheduler(local cache housekeeping?)及local cache用的WriteBehindService ?Red...原创 2019-07-07 22:45:40 · 1021 阅读 · 1 评论 -
Redisson执行过程分析
以例子AtomicDouble为例分析下执行过程从RedissonAtomicDouble可以看出所有Sync操作实际都是同步调用CommandAsyncService 的get分析Async future结果返回完成通过分析 this(commandExecutor.getConnectionManager().getCodec(),commandExecutor, nam...原创 2019-07-09 08:36:29 · 434 阅读 · 0 评论 -
Redisson Lock 简单分析
Redisson 提供了分布式的各类lock,如public class RedissonLock,从代码看大部分都使用:eval 模式,即脚本基于redis pubish、subscribe,即消息模式,消息模式可能存在: 无法保证发布的消息一定能被订阅者收到及 重启之后, 在重启过程中的消息丢失;因此在使用的时候需要考虑上述情况导致lock不释放或者没有及时处理的情况,以下是部分示意代...原创 2019-07-09 23:00:23 · 797 阅读 · 0 评论 -
Redisson Batch 分析
Redisson Batch 简单分析如下:单独的服务:CommandBatchService修改了父类的async,实现命令保存到commands里面,并改为通过execute批量执行依然是通过feature实现各个步骤:执行放在连接成功的feature,执行后的相应也是通过feature...原创 2019-07-14 20:43:13 · 2590 阅读 · 0 评论 -
Centos7 64位下编译32位redis
看文章说4G以下内存使用量 使用32位redis更快,一时手痒尝试编译redis,简单记录下,4个命令搞定,请两个是clean 确保没有64位的东西存在。make cleanmake distcleanyum -y install glibc-devel.i686 libgcc.i686make MALLOC=libc 32bitdone[root@localhost redis-4....原创 2019-06-30 11:24:47 · 283 阅读 · 0 评论 -
Redisson readWriteLock
Redisson readWriteLock 其实是通过两个类:RedissonReadLockRedissonWriteLock核心代码就是这两个类里面的script,如writelock return commandExecutor.evalWriteAsync(getName(), LongCodec.INSTANCE, command, ...原创 2019-07-16 07:45:14 · 1078 阅读 · 0 评论 -
redisson localCachedMap 代码分析
快速对Redisson 的localCachedMap进行了下代码分析在本地是hashmap存放,在redis是hash(hset、hget)存放过期:Ttl及IdleMax都是指本地,redis端内容没有过期在本地map中并不是以原始输入的key及value保存,而是转换了,包括将ttl及maxIdle作为value的一部分保存,具体可以看 class AbstractCacheMap的...原创 2019-07-12 07:49:05 · 1989 阅读 · 0 评论