可观测学堂

可观测技术指南

从概念、接入到生产治理,提供可执行、可验证的工程方法。

容器模块与编排港口插画
技术指南

Go 应用 Docker 容器化分步指南

Go 应用容器化指南:多阶段 Dockerfile、静态与 CGO 构建边界、运行时证书、Docker Compose 编排及开发与生产配置差异。示例需补齐健康检查、持久化和安全配置。

应用程序模块协作插画
技术指南

Go 1.24 新特性详解

Go 1.24 新特性解读:泛型类型别名、JSON omitzero、b.Loop、实验性 synctest、主模块 VCS 版本信息与 vet 检查,并说明 synctest 在 Go 1.25 的 API 变化。

应用程序模块协作插画
技术指南

Go 基准测试完全手册

Go 基准测试指南:BenchmarkXxx、b.N 与 Go 1.24 的 b.Loop、内存分配统计和 benchstat 对比。说明重复采样、环境噪声及性能结论的边界。

应用程序模块协作插画
技术指南

Go 错误处理基础与进阶

Go 把错误当值而非异常:error 接口、显式检查、errors.Is/As 判定、哨兵错误与自定义错误类型、错误包装 %w、panic 的边界。本文从哲学到实战讲清 Go 错误处理。

应用程序模块协作插画
技术指南

用 golang-migrate 管理 Go 项目的数据库迁移

golang-migrate 是 Go 生态主流迁移工具:up/down 迁移文件、CLI 与库两种用法、版本表追踪、脏版本恢复、CI/CD 集成。本文从概念到生产实践全覆盖。

应用程序模块协作插画
技术指南

用 Testify 增强 Go 测试:断言、套件与 Mock

Testify 为 Go 标准 testing 补足三块短板:assert/require 表达力更强的断言、suite 测试套件组织、mock 对象与外部代码生成工具。本文对比标准库写法,给出实战集成模式。

应用程序模块协作插画
技术指南

Go 超时处理完全指南

Go 超时处理全场景:context.WithTimeout 一脉贯穿 HTTP 客户端、数据库查询、Web 服务端,select+timer 手写模式、resty 重试、常见错误与测试方法。让慢依赖不再拖垮整个系统。

应用程序模块协作插画
技术指南

Gorilla Mux 路由指南

Gorilla Mux 路由指南:路径变量、方法匹配、正则约束、子路由和中间件。对照 Go 1.22 起 ServeMux 已支持的路径变量与方法模式,说明选型差异。

应用程序模块协作插画
技术指南

Go 中处理 JSON 完全指南

Go JSON 全攻略:Unmarshal/Marshal 双向转换、struct tag 定制字段、常见反序列化坑、数据校验、自定义 Marshaler、第三方高性能库与 json/v2 实验版。一篇讲透。

数据整理与查询插画
技术指南

Go 中使用 PGX 操作 PostgreSQL 入门

PGX 是 PostgreSQL 的纯 Go 驱动与工具包:可使用原生 API 或 database/sql 接口,原生支持 PG 专属类型、LISTEN/NOTIFY 与 COPY 协议,pgxpool 内置连接池。本文从连接到事务、批量操作全覆盖。

应用程序模块协作插画
技术指南

Go 中使用 Redis 做缓存入门

使用 go-redis 实现 Cache-Aside:连接与 TTL、区分缓存未命中和连接错误、取消传播、回填处理与一致性边界,并说明高可用和数据库降级保护前提。

数据整理与查询插画
技术指南

Go 中操作 SQL 数据库完全指南

Go database/sql 标准用法:驱动注册、连接池配置、查询与 Scan、预编译语句、事务、常见访问模式与工具选型(sqlc/sqlx/GORM)。本文从连接到生产模式全覆盖。