system column十三Tech
Engineering depth

后端与架构

从 Go、Redis、MySQL 到系统设计,继续把技术宅真正该懂的底层功夫慢慢补齐。

从 Go、Redis、MySQL 到操作系统与系统设计,这里更像一个长期积累的技术深水区。

Channel signal
40 篇技术文章 / 底层与系统设计
文章数量40
最新更新2025/8/21
首推入口6 min read
Archive stream

完整文章档案

保留列表浏览效率,但让每条内容都像频道中的一个节点,而不是普通博客条目。

04

Redis主从复制机制详解:全量同步、增量复制与级联架构

深入解析Redis主从复制的全量同步流程、命令传播机制、增量复制原理,以及主-从-从级联架构如何分摊主节点压力。

6 min read
05

Redis哨兵机制深度剖析:故障发现、选举与自动故障转移

深入解析Redis Sentinel的监控机制、主观下线与客观下线判定、Leader选举流程,以及完整的故障转移四步操作。

7 min read
06

深入理解计算机基本结构:冯·诺依曼体系与程序执行原理

从冯·诺依曼模型出发,深入解析计算机五大组成部分、CPU寄存器与总线工作原理,帮助你建立扎实的计算机体系结构基础。

4 min read
07

CPU缓存一致性深度解析:从写回策略到MESI协议

深入剖析CPU多级缓存架构、写直达与写回策略,以及MESI协议如何解决多核CPU缓存一致性问题,助你理解高并发性能优化的底层原理。

6 min read
08

Linux内核设计精髓:从系统调用到宏内核架构

深入解读Linux内核的核心能力、用户态与内核态切换机制,以及MultiTask、SMP、ELF和宏内核四大设计理念。

4 min read
09

操作系统内存管理全景解析:虚拟内存、分页与TLB

系统讲解虚拟内存的设计动机、内存分段与分页机制、多级页表与TLB的工作原理,帮助你彻底理解操作系统内存管理的核心技术。

8 min read
10

Linux内存分配与回收机制深度剖析:从malloc到OOM

深入解析Linux进程内存分布、malloc内存分配原理、内存回收机制与OOM Killer的工作流程,帮助你掌握Linux内存管理实战要点。

8 min read
11

操作系统进程模型全解析:从创建到调度与上下文切换

系统讲解进程的定义与状态模型、进程控制块PCB的结构、进程的创建/终止/阻塞/唤醒机制,以及上下文切换的底层原理。

6 min read
12

操作系统线程机制深度解读:轻量级进程与上下文切换优化

深入对比线程与进程的本质区别,解析线程的优劣势、上下文切换机制,以及同一进程内线程切换的性能优势来源。

3 min read
13

Linux进程间通信全攻略:从管道到Socket的六种方式

系统梳理管道、消息队列、共享内存、信号量、信号和Socket六种Linux进程间通信机制,分析各自优缺点与适用场景。

3 min read
14

零拷贝技术深度解析:从DMA到sendfile的性能优化之道

深入解析DMA技术原理、传统IO的上下文切换开销,以及mmap+write和sendfile两种零拷贝实现方式,助你理解高性能IO的底层优化。

4 min read
15

MySQL数据存储与查询执行全链路解析:从连接器到行格式

深入解析MySQL执行SELECT语句的完整流程、InnoDB表空间文件结构,以及Compact行格式的底层存储细节。

10 min read
16

go-zero 微服务实战:集成 Consul 作为服务注册中心

go-zero 默认使用 etcd 作为注册中心,但企业环境中 Consul 更为常见。本文详解如何在 go-zero 中替换为 Consul,涵盖 RPC 服务端注册与 API 网关调用的完整配置流程。

3 min read
17

go-zero 微服务实战:深入理解 zRPC 框架的核心机制

zRPC 是 go-zero 的企业级 RPC 框架,底层基于 gRPC 并内置熔断、限流、负载均衡等治理能力。本文深度解析拦截器、P2C 负载均衡、服务发现等核心模块的实现原理。

6 min read
18

MySQL慢查询优化实战指南:从索引原则到代价模型

系统梳理MySQL索引设计原则、慢查询优化基本步骤,以及基于代价模型的索引选择与推荐思路。

4 min read
19

Go 设计模式实战:对象池模式的原理与最佳实践

在 Go 高并发场景中,频繁创建和销毁对象会导致 GC 压力飙升。本文深入解析对象池模式的核心原理,结合 channel 实现一个高性能对象池,并对比 sync.Pool 的适用场景。

3 min read
20

Go 设计模式实战:适配器模式让不兼容接口无缝协作

当新旧系统接口不兼容、第三方库与项目规范冲突时,适配器模式是最佳解决方案。本文用 Go 代码详解对象适配器的实现,并剖析真实项目中的适用场景。

3 min read
21

MySQL Buffer Pool工作机制全解:缓存管理、LRU优化与脏页刷盘

深入解析InnoDB Buffer Pool的缓存页管理机制、Free链表与Flush链表的设计,以及改进版LRU算法如何解决预读失效和Buffer Pool污染问题。

8 min read
22

go-zero 源码解读:TaskRunner 如何优雅控制 Goroutine 并发数

Goroutine 并非越多越好,无限制创建会导致调度性能下降和 GC 压力。本文解读 go-zero 中 TaskRunner 的实现原理,展示如何用 channel 优雅控制并发度。

4 min read
23

MySQL日志体系深度剖析:undo log、redo log与binlog的协作机制

系统讲解MySQL三大核心日志undo log、redo log和binlog的作用原理、区别联系,以及两阶段提交如何保证数据一致性。

15 min read
24

TCP协议核心原理精讲(上):三次握手、四次挥手与连接状态管理

深入解析TCP面向连接与可靠传输的本质、三次握手与四次挥手的完整过程,以及TIME_WAIT和SYN攻击的原理与优化策略。

8 min read
25

TCP协议核心原理精讲(下):重传机制、滑动窗口与拥塞控制

深入解析TCP超时重传与快速重传机制、滑动窗口流量控制原理,以及慢启动、拥塞避免、快速恢复四大拥塞控制算法。

9 min read
26

Service Mesh 深度解析:如何优雅屏蔽服务治理细节

Service Mesh 通过 Sidecar 架构将服务治理能力下沉到基础设施层,实现跨语言复用。本文详解其设计思想、Istio 数据平面与控制平面,以及流量转发的实现机制。

5 min read
27

MySQL数据迁移方案全解析:双写与级联同步的平滑演进之道

深入对比MySQL双写方案和级联同步方案的实现细节,分析平滑迁移的条件、灰度切换策略以及缓存预热方法。

4 min read
28

静态资源加速实战:CDN 架构原理与优化策略

图片、JS、CSS加载慢拖垮用户体验?本文从DNS解析、GSLB调度到CDN回源策略,系统讲解静态资源加速的核心原理与工程实践。

8 min read
29

我用 ChatGPT 做了一场模拟面试,结果出乎意料

ChatGPT能搞定服务端技术面试吗?从微服务架构到分布式锁,我用真实面试题测试了ChatGPT的表现,结果既有惊喜也有警示,值得每个程序员参考。

17 min read
30

go-zero 微服务实战:分布式链路追踪的原理与配置

微服务架构下,跨服务的慢请求如何排查?本文详解 traceId 与 spanId 的设计原理,以及 go-zero 中基于 OpenTelemetry 的分布式链路追踪配置方法。

4 min read
31

go-zero 微服务实战:Prometheus 监控指标采集与可视化

Prometheus 是云原生监控的事实标准。本文介绍 Prometheus 核心概念与数据模型,并详解 go-zero 框架中如何开启和配置 Prometheus 服务监控。

6 min read
32

MySQL大表在线变更字段实战:pt-osc与Online DDL方案对比

深入分析千万级大表在线增加字段的挑战,详解pt-osc工具的工作原理和使用方法,以及MySQL原生Online DDL的优化演进。

5 min read
33

用 ChatGPT 辅助阅读源码:以 Kratos BBR 限流算法为例

源码读起来头大?试试让AI当你的技术翻译官。本文以Kratos BBR限流算法为例,演示如何用ChatGPT逐行解析Go源码,提升阅读效率和理解深度。

10 min read
34

高并发场景下的热点 Key 问题:从发现到解决

Redis 热 Key 是高并发系统的常见杀手。本文从 go-cache 本地缓存原理切入,深入解析 Kratos HotKey 的 LRU + TopK 组合方案,展示热点数据的发现与防护机制。

3 min read
35

用 ChatGPT 审查代码质量:三个真实案例的踩坑与收获

ChatGPT能发现代码中的隐藏问题吗?通过HTTP请求超时、错误处理缺失、哈希算法选择三个真实案例,验证AI辅助代码审查的实际效果与局限。

4 min read
36

Go 内存逃逸分析:从原理到性能优化的实战指南

内存逃逸是 Go 性能调优的关键课题。本文深入讲解堆与栈的分配机制、Go 内存管理模型,并总结六种常见的逃逸场景及对应的优化策略。

5 min read
37

Go 数据库连接池深度解析:database/sql 的实现原理与调优

连接池是数据库访问性能的基石。本文深入解读 Go database/sql 连接池的核心源码,剖析连接的创建、复用、回收与保活机制,帮你彻底理解 maxIdleConns 等参数背后的原理。

4 min read
38

Go 设计模式实战:策略模式消除冗余 if-else 的优雅方案

策略模式让你告别臃肿的条件分支,将算法封装为可互换的对象。本文通过 Go 代码演示策略模式的完整实现,分析其在支付路由、日志处理等场景中的实战价值。

3 min read
39

Go 设计模式实战:责任链模式构建灵活的请求处理流水线

责任链模式让请求沿着处理链逐层传递,实现请求发送者与接收者的解耦。本文详解 Go 实现方案,覆盖中间件、审批流、过滤器等经典应用场景。

3 min read
40

敏捷开发入门:用户故事拆分与需求沟通的艺术

软件需求是一个沟通的过程。本文从用户故事的定义与拆分原则出发,探讨敏捷开发中如何规避风险、细化需求,让开发团队与客户高效协作。

3 min read