Redis系列(八):Redis 数据结构之 skipList


skipList 跳跃表是一种有序的数据结构,通过每个节点中维持多个指向其他节点的指针,从而达到快速访问的目的。跳跃表是有序集合数据类型的底层实现之一。

查看更多

Redis系列(七):Redis 数据结构之 dict


redis 作为 key value 的数据库,字典是 redis 使用非常多的数据结构之一,本篇文章简单来了解一下 redis 的内部字典的实现

查看更多

Redis系列(六):Redis 数据结构之 SDS


Redis 没有直接使用 C 语言的字符串数组,而是自己构建了一个简单动态字符串用于 Redis 底层的字符串表示,即 SDS (Simple Dynamic String)

查看更多

Consul系列(一):Consul 的介绍与使用


Consul 用于实现分布式的服务发现和配置,内置了服务注册与发现框架,分布一致性协议实现,健康检查,Key/Value 存储,多数据中心方案,不再依赖其他工具。使用相对比较简单。

查看更多

Nginx 系列(一):工作原理

Nginx 作为高性能的 HTTP 和 反向代理服务器,被广泛使用在互联网的业务中。经典的比如 Nginx + PHP-FPM 的组合。本篇文章来简单了解一下 Nginx 的基本原理。

查看更多

Mysql 索引系列(五):覆盖索引

Mysql 索引系列(四):前缀索引

Mysql 索引系列(三):索引的策略


Mysql 的索引使用的是 B Tree 索引,B Tree 索引适用于全健值、键值范围、键前缀查询。所以在创建索引的时候,我们必须了解存储引擎的索引的策略。这样才能使得查询效率尽量达到最优。

本示例中使用的 Mysql 版本是: 5.7.23

查看更多

Mysql 索引系列(二):了解并使用 EXPLAIN 命令


上一篇文章讲解了 Mysql 在不同的存储引擎下索引的实现,在开始讲解索引的策略以及如何优化索引之
前,我觉得有必要先来了解以下如何去使用 EXPLAIN 命令来查看sql 语句的查询方式,因为在后续的
文章中,我们会经常使用该命令来调试和分析。除此之外,我们在工作中,也应该习惯去使用 EXPLAIN
命令来分析和优化索引。

本示例中使用的 Mysql 版本是: 5.7.23

查看更多

Mysql 索引系列(一):索引的实现


Mysql 数据库是目前最流行使用最广泛的关系型数据库,通过本系列来复习一下 Mysql 索引相关的知识。
本篇文章来讲解一下索引的具体实现。

查看更多