摘要: 阅读全文
posted @ 2021-07-09 11:11 邱佳飞 阅读(410) 评论(0) 推荐(0) 编辑
摘要: 整数集合时集合键的底层实现之一,当一个集合只包含整数值元素,并且这个集合数量不多时,就会使用整数集合 阅读全文
posted @ 2021-07-08 13:57 邱佳飞 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 压缩列表 ziplist 是列表键和哈希键的底层实现之一。当一个列表键只包含少量列表项,并且每个列表项要么就是小整数值,要么就是长度比较短的字符串, 那么Redis 就会使用压缩列表当列表键的底层实现。 阅读全文
posted @ 2021-07-07 10:42 邱佳飞 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 跳跃表 skiplist 是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的,平均复杂度 O(logN)、最坏 O(N) Redis 使用跳表作为有序集合集合键的底层实现之一,如果一个有序集合包含的元素数量比较多, 或者有序集合中成员是比较长的字符串时,Redis 就会使用跳表来作为有序集合键的底层实现 阅读全文
posted @ 2021-07-06 10:04 邱佳飞 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 在字典中,每个键都是独一无二的,程序可以在字典中根据键查找与之相关联的值,或者通过键来更新和删除值。 字典在 Redis 中的应用相当广泛,比如 Redis 的数据库就是使用字典来作为底层实现的,例如: 阅读全文
posted @ 2021-07-05 16:10 邱佳飞 阅读(53) 评论(0) 推荐(0) 编辑
摘要: 链表提供了高效的节点重排能力,以及可以顺序访问,也可以通过增删节点灵活调整链表长度,Redis中的列表、发布订阅、慢查询、监视器等功能均用到了链表。 阅读全文
posted @ 2021-07-04 23:00 邱佳飞 阅读(47) 评论(0) 推荐(0) 编辑
摘要: Redis 的 string 类型底层使用的是 SDS(动态字符串) 实现的, 具体数据结构如下: 阅读全文
posted @ 2021-07-03 23:42 邱佳飞 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 如果你的发流程是下面👇这个样子的, 那么你一定很好奇, 为什么我提交到仓库的代码可以自动部署并访问到最新的提交内容 阅读全文
posted @ 2021-07-03 22:27 邱佳飞 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 当程序不能正确处理错误时, 会触发 Go 的 panic,比如无效的内存访问。如果错误时意外发生的,并且没有别的方法来处理它,开发人员也可以触发 panic。理解恢复或终止的流程有助于理解程序 panic 的后果。 阅读全文
posted @ 2021-07-02 23:56 邱佳飞 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 关于开发者使用Go遇到的最大挑战的年度调查报告中,错误管理是经常被争论和反复提起的话题。然而,当涉及到在并发环境中处理错误或为相同的 goroutine 组合多个错误时,Go 提供了很好的包,使多个错误的管理变得很容易 阅读全文
posted @ 2021-07-01 20:13 邱佳飞 阅读(828) 评论(0) 推荐(0) 编辑