- 博客(9)
- 收藏
- 关注
转载 Java Reference 学习笔记
最近在知乎上看到的一个写的不错的文章,记录其中关键的知识点,以防忘记。WeakReference中所有的方法都是继承自Reference,所以要了解WeakReference以及更多其他的SoftReference、PhtomReference,学习好Reference是基础。弱引用 被GC特殊对待原理Reference有四个成员变量 这四个成员变量不能改变他们的顺序,因...
2018-09-17 10:41:06 184
原创 【ShardedJedis】实现细节
配置类型ShardInfo该类封装在redis.client.util包中,它提供的就是一个General概念的分区配置信息,其中weight表示权重。JedisShardInfo该类封装在redis.client.jedis包中,它继承了ShardInfo,这里吐槽一下作者,感觉这个Jedis jar包做得挺糙的,就两个包redis.client.jedis和redis.client.u...
2018-09-14 13:53:54 428
原创 【Redis设计与实现】 AOF持久化
AOF持久化简介与RDB持久化通过保存数据库中的键值对来记录数据库状态不同,AOF(Append Only File)持久化是通过保存Redis服务器所执行的写命令来记录数据库状态的。被写入AOF文件的所有命令都是以Redis的命令请求协议格式保存的。AOF持久化的实现AOF持久化功能处于打开状态是,服务器在执行完一个写命令之后,会议协议格式将被执行的谢明令追加到服务器状态...
2018-08-29 17:05:29 182
原创 【Redis设计与实现】 读书笔记 数据结构与对象 对象
对象简介在之前的笔记中,陆续学习了Redis用到的所有主要数据结构,其中省略了一下,大多是基本的数据结构。Redis并没有直接使用这些数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统,这个系统包含字符串对象、列表对象、哈希对象、集合对象和有序结合对象这五种类型的对象,每种对象都用到了之前学过的数据结构。使用对象的好处是,Redis可以再执行命令之前,根据对象的类型来判...
2018-08-25 11:30:19 189
原创 Redis设计与实现】 读书笔记 数据结构与对象 整数集合
整数结合简介整数集合是结合键的底层实现之一,当一个集合只包含整数值元素,并且这个结合的元素数量不多时,Redis就会使用整数集合作为集合键的底层实现。数据结构typedef struct intset { // 编码方式 uint32_t encoding; // 集合包含的元素数量 uint32_t length; // 保存元...
2018-08-24 10:57:34 87
原创 【Redis设计与实现】 读书笔记 数据结构与对象 链表
链表简介链表作为一种常用数据结构,链表内置在很多高级的编程语言里面,因为Redis使用的C语言并没有内置这种数据结构,所以Redis构建了自己的链表结构。 链表在Redis中应用非常广泛,比如列表建的底层实现之一就是链表。当一个列表键包含了数量比较多的元素,又或者列表中包含的元素都是比较唱的字符串时,Redis就会使用链表作为列表键的底层实现。要点链表被广泛用于实现Redi...
2018-08-23 20:52:22 112
原创 【Redis设计与实现】 读书笔记 数据结构与对象 简单动态字符串
SDS 简单动态字符串背景介绍Redis数据库里面的每个键值对都是有对象组成的,数据库的键总是一个字符串对象(String Object); 而数据库键的值则可以使字符串对象、列表对象(list object)、哈希对象(hash object)、集合对象(set object)、有序集合对象(sorted set object)。SDSRedis使用SDS(simple dy...
2018-08-23 20:40:29 123
原创 【0 -> Spring】AOP 学习笔记 (二)
AOP1. 实现植入代码的链式调用。上一节的学习中。通过读取aop的配置文件已经实例化了一个Pointcut(AspectJExpressionPointcut),它被用来找到那些满足被植入条件的Method。以及MethodLocatingFactory,它被用来定位具体的切入Method(注意,这里的Method,不是Pointcut中的target method,而是具体植入代...
2018-08-23 19:58:21 163
原创 【0 -> Spring】AOP 学习笔记 (一)
AOP为什么要实现AOP实现代码的过程中,通常只关注业务。而实现业务中不可避免的会需要关注到一些非业务逻辑层面。例如对业务逻辑代码的执行时间的记录,对于业务逻辑代码的日志记录,对业务逻辑代码的异常处理、安全验证。归类上述这些业务逻辑会发现。这些逻辑与要实现的业务逻辑是完全正交的,即X,Y轴,互不影响,但是共存。我们称对这类业务实现的编程为AOP(Aspect Oriented Pro...
2018-08-14 23:29:00 117
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人