Date: 10/22/2026Category: GoWind风行Tag: Golang, Go-Kratos, GoWind, 分布式, 运维平台
本文回答一个问题:core 服务水平扩到多副本之后,定时任务、指令回执、构建触发、告警外呼,靠什么保证不重复执行——而又不引入 Redlock、etcd concurrency、ZooKeeper 分布式锁里的任何一种?
GoWind Ops 的 core 是唯一连库的领域服务,天然想水平扩:多副本分摊 MQTT 信令、多副本跑定时调度。但多副本立刻带来一组经典问题——同一分钟的双 cron 触发、同一指令的重复回执、同一配置的并发构建。常见的答案是上一把分布式锁,GoWind Ops 的选择是把协调拆散进它已经在用的三个层:MQTT broker 的投递语义、数据库条件更新、Redis 原子操作。全仓找不到 redsync / etcd concurrency / 抢占式锁服务里的任何一种"锁服务"。
