工程实践

9 篇

AWS多泳道自动化持续交付实践

本文面向 DevOps 架构师与云原生工程师,介绍如何基于 AWS CodePipeline + CloudFormation 构建一套支持多泳道(Multi-Lane)并行部署的 ECS 持续交付体系。重点解释资源归属、并发边界、镜像晋级与恢复,使模板治理和业务交付能够分别演进。

编程原则的工程实践:从 KISS 到正交性

编程原则是对抗软件复杂性的核心工具,但工具之间存在内在张力。本文以电商订单系统为主线,将 KISS、DRY、SOLID 等十余条编程原则按目标维度分为四组,逐一拆解其工程含义、典型误用与正确边界,并给出原则冲突时的决策框架和不同项目阶段的原则权重建议。

Dynamic Protobuf in Go: Runtime Schema Hot-Reload via Custom protoc Plugin

This article separates offline Protocol Buffers schema compilation from runtime message handling in Go, without relying on pre-generated message structs. It walks through the full path from .proto file to runtime proto.Message via FileDescriptorProto, and presents a practical protoc plugin solution for hot-reloadable schema management.

Java构件发布到中央仓库

记录 Java 构件通过 OSSRH 发布的历史流程,解释命名空间验证、GPG 签名与 Maven 配置,并补充 OSSRH 关闭后迁移到 Central Publisher Portal 的入口与发布检查。

一个秒杀系统的设计思考

秒杀系统的核心挑战在于瞬时流量洪峰下的容量、交易正确性与故障恢复的共同约束。从动静分离与多级缓存的读优化,到库存扣减的一致性保障,再到全生命周期的可用性工程——每一层设计决策背后,都是对系统容量、数据正确性与业务连续性的深度权衡。