这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
《后端架构设计·架构基础与边界》前言
说明 arch-lab 的定位、范围与目录结构,列出 Go 1.26.0、PostgreSQL 18.4、Docker 29.7.2、Java 21 容器等验证环境,定义 L1–L4 四级可运行标准、代码标记与抽取方式、领域模型与 API 边界,以及本书对实测数字和未覆盖内容的承诺。
posts
这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
说明 arch-lab 的定位、范围与目录结构,列出 Go 1.26.0、PostgreSQL 18.4、Docker 29.7.2、Java 21 容器等验证环境,定义 L1–L4 四级可运行标准、代码标记与抽取方式、领域模型与 API 边界,以及本书对实测数字和未覆盖内容的承诺。
系统讲解随机数工程:真随机与伪随机的分野、LCG/Mersenne Twister/PCG 的取舍、种子与可复现性、CSPRNG 与操作系统熵池、采样洗牌的拒绝采样、分布变换、UUID 与 Token 中的随机,以及常见误用与安全陷阱。
Zig 把内存分配显式化为一个可替换的接口:std.mem.Allocator 的 vtable 设计让 Arena、FixedBuffer、GPA、栈回退与内存池都能自由组合。本文讲解 Allocator 接口的本质与 vtable 结构、标准分配器家族的适用场景、GPA 的元数据与泄漏检测机制、如何从零编写自定义分配器、分配器包装(计数/日志/失败注入)以及真实项目中的场景化选型。
深入 SDP 与 Offer/Answer 模型:逐行解读真实 SDP、拆解 m-line 与 a= 属性、讲清 signalingState 状态机与再协商流程、编解码协商中的 rtpmap 与 fmtp、方向属性与 SDP 改写风险,并给出常见协商失败坑与排障方法。
RediSearch 全文检索实战:FT.CREATE 建索引与 HASH/JSON 数据源、TEXT/TAG/NUMERIC/GEO/VECTOR 字段类型、WEIGHT 与 SORTABLE 选项、中英文分词与自定义词典、FT.SEARCH 查询语法(字段限定、布尔、前缀、模糊、短语、数值与地理过滤)、排序分页与 INKEYS/LIMIT 优化、FT.AGGREGATE 分组统计与 APPLY/REDUCE、HIGHLIGHT 与 SUMMARIZE 摘要、FT.EXPLAIN 执行计划、索引管理与内存调优、与向量检索混合使用
PHP 生成器、Fiber 与协程调度实战:Iterator 接口与 yield 语义、惰性序列与内存优势、send/getReturn/throw 双向通信、大文件与数据库游标流式处理、Fiber 的挂起与恢复、状态机与事件循环协作、与 Swoole/ReactPHP 的对比、手写协作式任务调度器。
Nix Overlays 与包集定制实战:overlay 的本质与 final/prev 签名、惰性互引与叠加顺序、import nixpkgs 注入 overlays 的几种姿势、override/overrideAttrs/overrideScope 三件套的取舍、替换整个包集与 pkgsStatic/pkgsCross、多 overlay 的组织与复用、与 flake 的结合、常见坑(无限递归/不级联/丢属性)与排错。
深入 Elixir 后台任务框架 Oban:Postgres 队列的架构与表结构、Worker 定义与返回值语义、唯一性约束与指数退避重试、Cron 定时插件、队列隔离与并发控制,以及 Telemetry 可观测、Oban Web UI 与 OTP 监督树集成。
《互联网产品的客户端架构·端形态与体验基础》的完整目录与学习路径:13 章 39 节从端上约束、端形态与体验质量属性讲到分层、状态、路由、数据、组件、构建、渲染、错误与观测,附实验工程、三条阅读路径、数字与版本口径,以及读完卷一应能回答的六个问题。
生产容器的三件套:非 root 身份、HEALTHCHECK 探针、内存与 CPU 限制。本节实测 64MB 限额下申请 200MB 触发 OOMKilled(退出码 137),CPU 配额减半让同一任务耗时翻倍,并验证 Go 运行时会自动感知 cgroup 的 CPU 配额。
把 TaskHub 的镜像构建从 30.2 秒压到 14.3 秒:把 go.mod 与源码分成两层,改一行代码不再重下全部依赖,实测依赖层命中后构建耗时减半;同时讲清 Go 交叉编译与多架构镜像的差别,以及 buildx 缺失时该如何降级。
把 TaskHub 打成容器镜像:单阶段朴素写法产出 510MB,改用多阶段构建 + CGO_ENABLED=0 静态链接 + distroless 基础镜像后压到 15MB,最终镜像里只剩一个二进制文件,连 shell 都没有,攻击面同步缩小。
系统讲解 IEEE 754 浮点数:符号/阶码/尾数的二进制布局、规格化与非规格化数、NaN 与 Inf 语义、0.1+0.2 精度损失的来源、epsilon 与 ULP 比较、金额与定点数、Kahan 求和与数值稳定性,以及格式化解析与跨语言差异。
Zig 把 SIMD 作为语言一等公民:@Vector 类型、逐元素运算、@reduce 归约、@shuffle 重排、@select 选择都由编译器映射到 SSE/AVX/NEON 指令。本文讲解向量类型与内存布局、向量化内置函数家族、自动向量化的成立条件、矩阵乘法与字节扫描实战、对齐与跨平台策略,以及如何用 std.time.Timer 做严谨的基准对比。
Redis 脚本与 Functions 工程化指南:EVAL/EVALSHA/SCRIPT LOAD 脚本缓存与 NOSCRIPT 处理、Lua 沙箱与 redis.call/redis.pcall 差异、KEYS/ARGV 键声明与集群槽位校验、Redis 7.0 FUNCTION LOAD/FCALL/FCALL_RO 函数库注册与
PHP 属性与反射元编程实战:Attribute 语法与声明目标(TARGET_CLASS/METHOD/PROPERTY/PARAMETER)、ReflectionAttribute 读取与 newInstance 实例化、PHP 8.x 内置属性(Override/Deprecated/SensitiveParameter/AllowDynamicProperties)、属性驱动的路由/ORM 映射/参数校验、属性与 Doctrine 注解的对比迁移、反射性能与元数据缓存策略、构建迷你属性驱动框架。
Nix Flake 输入管理实战:inputs 声明与六种 input 类型(path/git/github/tarball/url/indirect)、flake.lock 结构逐字段解析、nix flake update 与选择性更新、follows 去重与依赖统一、私有 input 与认证(token/ssh/netrc)、--override-input 本地开发、锁文件治理与团队协作、常见坑与排错清单。
系统讲解 WebRTC 的连通性基石:NAT 映射行为如何决定穿透难度、STUN Binding 请求与 XOR-MAPPED-ADDRESS 的工作机制、host/srflx/prflx/relay 四类候选的收集过程、连通性检查与候选配对优先级,以及 TURN 中继的部署与 Trickle ICE 实践。
从 GenStage 的需求驱动背压模型出发,系统讲解生产者/消费者/生产者消费者三类角色的回调契约、Flow 的分区窗口与聚合算子,以及 Broadway 构建 SQS/Kafka/RabbitMQ 生产管道的并发编排、错误处理与可观测方案。
《游戏引擎实现原理》卷一附录 C:汇总全书性能基准的原始数字与测量方法。给出 SoA vs AoS、连续遍历 vs 指针追逐、对象池 vs new 三组实测数据(含中位数、堆增量与 IQR),讲清进程隔离、预热、hrtime 计时与 21 样本中位数统计这套方法论,并诚实声明这些是同机相对量级、绝对数值不可移植。