- 博客(6)
- 收藏
- 关注
原创 Redis 学习笔记_单机数据库机制(4)
单机数据库机制服务器中的数据库redis服务器将所有数据库都保存在数据库状态redis.h/redisServer结构的db数组中。db中每个都是redis.h/redisDb结构,每个这个结构都代表一个数据库。默认创建16个数据库。示例:切换数据库:SELECT x (x:第x+1个数据库)数据库键控件redisDb结构的dict字典保存了数据库中的所有键值对,我们将这个字典称为键...
2020-04-22 18:29:20 135
原创 Redis 学习笔记_对象(3)
对象 redis没有使用sds,链表,字典,跳跃表,整数集合,压缩列表这些数据结构直接实现键值对数据库,而且构建了5种对象(字符串对象,列表对象,哈希对象,集合对象,有序集合对象),每种对象至少包含一种数据结构。 好处是在不同场景使用不同的数据结构,提高效率。对象的类型和编码类型对象编码OBJECT ENCODING输出REDIS_STRINGREDIS_EN...
2020-03-24 18:54:37 139
原创 Redis 学习笔记_数据结构(2)
跳跃表(skiplist)跳跃表的实现typedef struct zskiplist{ //表头表尾节点 struct skiplistNode *header,*tail; //表中节点数量 unsigned long length; //表中最大的节点层数 int level; } zskiplist;ty...
2020-02-27 18:12:07 84
原创 Redis 学习笔记_数据结构(1)
SDS(简单动态字符串)问题:为什么redis没有直接使用C语言的字符串而是使用了SDS(simple dynamic string)呢?获取字符串长度复杂度:因为C语言获取长度会遍历整个字符串,复杂度为O(N)。而SDS则记录了使用大小len和剩余大小free杜绝缓冲区溢出:C语言的字符串有缓冲区溢出的情况(一个字符串S1被一个更长的字符串替换(未重新分配内存) 导致后面的字符串S2被替...
2020-02-25 18:14:38 70
原创 JPA @PostPersist 等注解的使用场景和使用方法
JPA @PostPersist 等注解的使用场景和使用方法在我们使用JPA对数据库进行操作的时候,我们时常会出现数据库字段设置未不能为空,而我们保存的字段为null导致程序报错。这个时候我们就可以使用 @PrePersist @PostPersist 注解回调方法来解决问题。回调方法是附加到实体生命周期事件的用户定义方法,并且在发生这些事件时由JPA自动调用。我们可以发现有很多类似的...
2019-01-15 19:20:18 6925
原创 HTTPS初解
1.1 HTTPS概念是以安全为目标的HTTP通道,简单讲是HTTP的安全版。1.2 HTTP与HTTPS的区别HTTP 的数据是明文,因此使用HTTP协议传输非常不安全。HTTP 不验证通讯方的身份,因此可能遭遇伪装。HTTP 无法证明报文的完整性,所以有可能已遭篡改。HTTPS 可以理解为HTTP+SSL/TLS,即HTTP下加入了SSL层,HTTPS的安全基础是SSL,因...
2018-11-21 11:51:40 169
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人