归档

文章58 / 全部长文

共 432 分钟阅读 · 约 9.3 万字 · 最近更新 2026.09.17
写作节奏 / 近 12 个月
58篇 · 月均 4.8
平均每篇7 分钟最近发布2026.09.17最长27 分钟

最近 12 个月发布 58 篇,集中在

58/ 58 篇
全部文章
202624 篇 · 231 分钟
在M1上使用CMake编译redis6.2.14

在M1上使用CMake编译redis6.2.14

本文介绍了如何在 macOS M1 系统上使用 CMake 编译 Redis 6.2.14 版本的详细步骤。由于 Redis 官方在 6.2.14 版本之前对 ARM 架构的支持存在问题,因此推荐使用 6.2.14 或更高版本进行编译。文章提供了从创建 CMakeLists.txt 文件到编译和安装 Redis 的完整流程,包括各个依赖库(如 hdr_histogram、hiredis、linenoise、lua)的 CMake 配置。通过本文的指南,读者可以在 macOS M1 系统上顺利编译并安装 Redis 6.2.14。

2026.02.04 · 7 分钟
Parallels安装和设置

Parallels安装和设置

本文详细介绍了在macOS M1环境下使用Parallels Desktop安装Ubuntu虚拟机的步骤,包括如何选择合适的镜像、安装过程中的设置、以及如何通过SSH连接Ubuntu虚拟机。还介绍了如何安装Parallels Tools以实现文件共享功能,并提供了常见问题的解决方法和实用参考链接,帮助用户顺利完成虚拟机的安装与配置。

2026.02.04 · 6 分钟
macOS制作ubuntu安装盘

macOS制作ubuntu安装盘

使用 macOS 终端命令快速制作 Ubuntu 安装 U 盘。本教程涵盖如何查找磁盘、使用 dd 命令写入 ISO 镜像,并安全地弹出设备,适合希望在 mac 上制作 Linux 启动盘的用户。

2026.02.04 · 2 分钟
macOS上Java开发环境搭建

macOS上Java开发环境搭建

在 macOS 上搭建高效的 Java 开发环境:使用 sdkman 安装 JDK 与 Maven,配置 IntelliJ IDEA 常用选项,并推荐一批实用插件(JRebel、Grep Console、Maven Helper 等)和日志配色方案,提升日常开发效率。

2026.02.04 · 1 分钟
macOS终端terminal配置

macOS终端terminal配置

在MAC的终端(Terminal)中,不仅可以通过原生的功能完成工作,还可以通过一系列的美化和配置,将其打造成一个既美观又高效的开发工具。本文将从字体选择、Terminal 主题美化到 Zsh 配置优化,为您详细介绍如何一步步提升MAC Terminal的使用体验。

2026.02.04 · 4 分钟
MySQL 高级索引机制解析:聚簇索引、覆盖索引与 MRR 等

MySQL 高级索引机制解析:聚簇索引、覆盖索引与 MRR 等

本文系统梳理了 InnoDB 中的高级索引机制,从聚簇索引与辅助索引的物理结构出发,解释回表、覆盖索引、自适应哈希索引以及 MRR 多范围读取等关键优化点,并结合「三星索引」理念,帮助你在实际业务中设计出更高效的 MySQL 索引方案。

2026.02.04 · 8 分钟
数据库分页查询性能优化

数据库分页查询性能优化

深入分析 MySQL 在使用 LIMIT OFFSET 进行深度分页时的性能瓶颈,从执行器的真实行为入手,给出基于主键 ID、二级索引、游标分页和全局索引表的多种优化方案,并附带实际耗时对比与适用场景说明。

2026.02.04 · 16 分钟
MySQL explain命令介绍

MySQL explain命令介绍

解析了MySQL中EXPLAIN命令的执行结果及其各个字段的含义。文章通过实例说明如何使用EXPLAIN命令来分析查询性能,并解读查询计划中的关键信息,如select_type、table、type、possible_keys、key、rows等字段,帮助更好地理解和优化SQL查询。

2026.02.04 · 17 分钟
MySQL索引优化实践

MySQL索引优化实践

系统梳理 MySQL 索引优化的实战要点:联合索引的使用原则、覆盖索引的收益与适用场景、索引下推(ICP)机制、In/OR 与 LIKE 前缀匹配的索引行为,以及 ORDER BY、GROUP BY 与分页查询在大表下的性能优化策略与示例。

2026.02.04 · 27 分钟
MySQL索引优化规则

MySQL索引优化规则

MySQL 索引是数据库查询优化的关键,合理的索引设计可以显著提高查询性能。本篇博客将介绍 MySQL 索引的优化规则,包括索引类型、最佳实践、常见误区以及如何使用 EXPLAIN 进行优化分析,帮助你构建高效的数据库查询方案。

2026.02.04 · 11 分钟
MySQL MVCC、Undo Log 与 Read View 实现原理深度解析

MySQL MVCC、Undo Log 与 Read View 实现原理深度解析

本文系统介绍了 MySQL InnoDB 中 MVCC(多版本并发控制)的工作机制,包括快照读与当前读的区别、MVCC 解决的典型问题(读写不阻塞、降低死锁、实现一致性读),以及 InnoDB 通过 undo log 版本链与 Read View 来判断「当前事务能看到哪一个数据版本」的完整过程。通过多组事务时序示例,文章直观展示了在可重复读与读已提交隔离级别下,事务为何能看到不同的数据版本,从而帮助读者从实现层面真正理解 MySQL 的事务隔离与并发控制。

2026.02.04 · 21 分钟
MySQL单表查询如何计算成本

MySQL单表查询如何计算成本

在 MySQL中,索引的选择和使用直接影响查询的执行成本。本文将详细介绍如何计算索引查询的代价,包括范围区间数量、回表次数、索引选择、排序代价、扫描行数等关键因素。通过EXPLAIN和TRACE命令,我们可以深入分析 SQL查询的执行过程,理解 MySQL 优化器的决策逻辑,并针对索引选择、查询优化提供实用的优化策略,帮助开发者提升数据库性能。

2026.02.04 · 21 分钟
MySQL的SQL执行过程

MySQL的SQL执行过程

本文通过简要介绍 MySQL 中的各个核心组件,包括连接器、查询缓存、解析器、优化器、执行器和日志模块,带领读者一步步梳理一条 SQL 语句在数据库中的完整执行流程。从客户端发送请求开始,到生成执行计划,再到实际读取或写入数据,逐层揭示各模块的职责与协作方式,帮助读者建立起对 MySQL 内部工作机制的整体认识,为后续性能调优和故障排查打下基础。

2026.02.04 · 10 分钟
MySQL使用trace命令验证查询成本

MySQL使用trace命令验证查询成本

介绍了如何使用MySQL的trace命令来分析查询的执行过程。文章详细讲解了trace命令的具体用法,并通过解析trace结果,帮助读者理解MySQL在执行查询时是如何选择索引的,以及如何通过分析这些信息来优化查询性能。

2026.02.04 · 7 分钟
使用Colima在Apple Silicon上运行Oracle容器镜像

使用Colima在Apple Silicon上运行Oracle容器镜像

在Apple Silicon(M 系列)Mac上部署Oracle容器存在架构兼容性难题。本教程介绍如何通过Colima 配置 x86_64虚拟机并启用Rosetta支持,轻松在ARM macOS上运行 Oracle数据库镜像。

2026.02.04 · 4 分钟
RabbitMQ的使用

RabbitMQ的使用

本文系统介绍了 RabbitMQ 的基础用法,并深入解析如何通过 Spring Boot 集成实现消息的发送、接收与监听。内容涵盖交换机、队列、绑定关系及消息确认机制等核心概念,旨在帮助开发者高效构建稳定可靠的消息驱动系统。

2026.02.04 · 10 分钟
RabbitMQ的最佳实践

RabbitMQ的最佳实践

本文深入探讨了在使用 RabbitMQ 时如何保障消息系统的可靠性与稳定性,涵盖了消息不丢失的保障机制、消费者幂等性的实现策略、消息顺序的控制技巧以及数据堆积的应对方法。通过实践经验与配置建议相结合,帮助你构建一个高可用、可控且具备容错能力的消息队列系统。

2026.02.04 · 7 分钟
RabbitMQ的死信队列和延迟队列

RabbitMQ的死信队列和延迟队列

死信队列(DLX)和延迟队列是构建健壮消息系统的关键机制。本文深入讲解了 RabbitMQ 中死信队列的触发场景(如消息过期、拒收、队列满等),以及如何利用插件或 TTL+死信机制实现延迟队列。通过配置示例帮助你掌握在生产环境中正确使用这两类队列,以实现消息重试、延迟处理、异常监控等常见需求。

2026.02.04 · 5 分钟
RabbitMQ的介绍和安装

RabbitMQ的介绍和安装

本文介绍了 MQ 的基本概念、使用场景,并提供了在本地环境下安装 RabbitMQ 的详细步骤,适合消息队列初学者快速上手。

2026.02.04 · 5 分钟
Redis开源相关命令记录

Redis开源相关命令记录

记录自己参与 Redis 开源过程中的问题复现、调试步骤和思考。

2026.02.04 · 2 分钟
基于快照的批量处理遗漏问题与CDC架构解法

基于快照的批量处理遗漏问题与CDC架构解法

你的数据真的同步完整了吗? 本文直击数据架构的隐形陷阱——基于快照和自增主键水位线的增量同步在 Read Committed 隔离级别下,如何导致延迟提交的事务(如“订单 1002”案例)被批处理任务永久遗漏。我们将深入分析这一问题的数据库根源,并对比两种根本性解决方案:一是基于业务/应用水位线的增量处理,它通过时间戳或版本号来弥补快照缺陷;二是变更数据捕获 (CDC),它通过读取事务日志,彻底实现零遗漏、近实时的数据同步。通过对比侵入性、数据完整性、成本与实时性,助你选择最可靠的流式数据架构策略。

2026.02.04 · 6 分钟
socket的阻塞模式和非阻塞模式

socket的阻塞模式和非阻塞模式

本文深入对比了 socket 的阻塞模式与非阻塞模式的行为差异,涵盖 connect、accept、send、recv 等常用函数在两种模式下的表现,以及各自的优缺点、适用场景和错误处理方式,帮助你在开发高性能网络程序时做出正确选择。

2026.02.04 · 9 分钟
编译Spring5.3.10源码

编译Spring5.3.10源码

记录如何下载并重命名 Spring 5.3.10 源码、使用 Gradle 编译并在 IntelliJ IDEA 中创建测试模块,验证注解扫描与依赖注入可正常运行,并给出 Gradle 构建日志与注意事项。

2026.02.04 · 7 分钟
Spring AOP源码之基本概念介绍

Spring AOP源码之基本概念介绍

本文从动态代理入手,系统梳理了 Spring AOP 中几个最核心的概念和实现方式:先用 CGLIB / JDK 动态代理说明“代理”究竟改变了什么,再通过 ProxyFactory、Advice、Advisor、Pointcut 等 API 串起 Spring AOP 的底层机制,最后再回到注解驱动的使用方式,帮助读者把「怎么用」和「为什么这样设计」连接起来。

2026.02.04 · 18 分钟