<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[喵个咪的专栏]]></title><description><![CDATA[超级全栈]]></description><link>https://blog.csdn.net/tx7do</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; tx7do]]></copyright><item><title><![CDATA[GoWind ShortPlay 拆解：Ent privacy/viewer 多租户隔离——从中间件到 SQL 的零信任链]]></title><link>https://blog.csdn.net/tx7do/article/details/168743814</link><guid>https://blog.csdn.net/tx7do/article/details/168743814</guid><author>tx7do</author><pubDate>Tue, 27 Oct 2026 10:50:49 +0800</pubDate><description><![CDATA[GoWind ShortPlay 通过零信任链实现多租户隔离：从 Kratos 中间件注入身份，经 Viewer 显式定义信任边界，依托 Ent Privacy Policy 在 ORM 层自动注入 tenant_id 条件，读写路径均 fail-closed。全仓 51 张表无手写过滤逻辑，仅靠 mixin 混入策略，反射注入 WHERE 条件，确保“一条 SQL 都没手写”下租户数据零泄漏。游客、用户、系统三类 Viewer 分层管控，解析失败直接拒绝，写路径强制覆盖 tenant_id，杜绝数据污染。]]></description><category></category></item><item><title><![CDATA[GoWind ShortPlay 拆解：Flutter 沉浸式 Feed 的播放器工程——生命周期、手势状态机与游客降级]]></title><link>https://blog.csdn.net/tx7do/article/details/168743917</link><guid>https://blog.csdn.net/tx7do/article/details/168743917</guid><author>tx7do</author><pubDate>Tue, 27 Oct 2026 10:50:34 +0800</pubDate><description><![CDATA[GoWind ShortPlay 拆解 Flutter 端核心工程：以 PageView 自然回收实现播放器生命周期管理，仅活跃页播放并精准交接状态；自研手势状态机解决单击零延迟与双击判定冲突，还原抖音手感；9 个 BLoC 实现轻量状态管理，全局登录态用 ValueNotifier 轻量化处理；401 静默降级三层设计——单飞刷新、失败回游客态、互动时引导登录，保障游客可刷、互动必登录。]]></description><category></category></item><item><title><![CDATA[GoWind ShortPlay 拆解：不用模型的推荐闭环——埋点回流、三路召回与已看去重]]></title><link>https://blog.csdn.net/tx7do/article/details/168743998</link><guid>https://blog.csdn.net/tx7do/article/details/168743998</guid><author>tx7do</author><pubDate>Mon, 26 Oct 2026 18:38:36 +0800</pubDate><description><![CDATA[GoWind ShortPlay 在无模型、无算法团队的条件下，构建了一套真实可闭环的短视频推荐系统：通过播放器实时上报四类行为信号（播放、心跳、完播、划走），以客户端去重与防刷机制保障数据质量；埋点数据直接入表，索引设计直击查询需求，观看历史即埋点日志；三路召回（关注/热门/最新）超采样合并，热度分由SQL加权计算，已看去重基于Redis SET实现，召回理由随内容回传。全程无模型依赖，但每环皆为真实信号，用极简架构跑通反馈闭环，是冷启动阶段最诚实的推荐实践。]]></description><category></category></item><item><title><![CDATA[GoWind UBA 拆解：把 Doris UNIQUE KEY 翻译成 ClickHouse——读数正确性对齐实录]]></title><link>https://blog.csdn.net/tx7do/article/details/168755363</link><guid>https://blog.csdn.net/tx7do/article/details/168755363</guid><author>tx7do</author><pubDate>Mon, 26 Oct 2026 18:38:05 +0800</pubDate><description><![CDATA[GoWind UBA 通过编译期常量实现 Doris 与 ClickHouse 双引擎切换，核心挑战在于将 Doris UNIQUE KEY 的“写入即覆盖”语义等价映射至 ClickHouse。关键在于：以 ReplacingMergeTree(updated_at) 实现去重，ORDER BY 键兼顾查询剪枝与去重，optimize_on_insert=1 缓解批次重放重复；读端强制使用 FINAL 防止未合并数据导致计数翻倍；派生表放弃物化视图，改用每日全量回算（ch-etl）确保聚合正确性，并通过 ]]></description><category></category></item><item><title><![CDATA[GoWind CMS 拆解：给 NL2SQL 上四把锁——智能问数的安全边界]]></title><link>https://blog.csdn.net/tx7do/article/details/168755467</link><guid>https://blog.csdn.net/tx7do/article/details/168755467</guid><author>tx7do</author><pubDate>Mon, 26 Oct 2026 18:37:34 +0800</pubDate><description><![CDATA[GoWind CMS 通过四重护栏保障 NL2SQL 安全：表白名单（白名单即数据字典，防幻觉与越权）、危险模式拒绝（禁用写操作、多语句、注释）、LIMIT 钳制（强制截断至100行）、只读事务（数据库层兜底）。辅以租户谓词校验（fail-closed）与真实示例 few-shot 引导，实现“错的无害、对的大概率”。]]></description><category></category></item><item><title><![CDATA[GoWind CMS 拆解：社交分发引擎——10 平台适配器、状态闸门与自愈定时任务]]></title><link>https://blog.csdn.net/tx7do/article/details/168755427</link><guid>https://blog.csdn.net/tx7do/article/details/168755427</guid><author>tx7do</author><pubDate>Sun, 25 Oct 2026 15:26:45 +0800</pubDate><description><![CDATA[平台异构性收口在适配器层——哨兵错误即协议，能力差异（InboxFetcher、ErrStatsUnsupported）用可选接口和类型化错误表达，上层永远只见统一语义；发布是状态机——状态流转收敛在仓储、进入 PUBLISHING 走条件更新、重试计数在库不在内存，所有并发问题在状态闸门前终止；定时承诺用两层防线兑现——asynq DELAY 管正常路径，每分钟 sweep 管灾难路径，幂等 worker 让重复入队无害；]]></description><category></category></item><item><title><![CDATA[GoWind CMS 拆解：在 Go 里给 TipTap 搭一套 Yjs 协同后端]]></title><link>https://blog.csdn.net/tx7do/article/details/168755389</link><guid>https://blog.csdn.net/tx7do/article/details/168755389</guid><author>tx7do</author><pubDate>Sun, 25 Oct 2026 15:26:05 +0800</pubDate><description><![CDATA[GoWind CMS 在 Go 中构建 Yjs 协同编辑后端，通过 ygo 实现纯 Go 的 CRDT 支持，以 WebSocket 服务（COLLAB_ADDR）对接 TipTap。从 v1 软锁感知编辑状态，到 v2 持久化自愈（基于 gRPC 与 core 表的续命存储），再到 v2.5 服务端权威种子化（HTML → Yjs 受控转换），逐步解决多人编辑中的竞态、断线丢失与初始状态同步问题。核心设计强调“感知而非强制”，依赖客户端全量回流与幂等 update 实现最佳努力恢复，兼顾兼容性与工程鲁棒性]]></description><category></category></item><item><title><![CDATA[AI 时代的危与机：当潮水退去，技术人如何自处]]></title><link>https://blog.csdn.net/tx7do/article/details/168978331</link><guid>https://blog.csdn.net/tx7do/article/details/168978331</guid><author>tx7do</author><pubDate>Sun, 25 Oct 2026 15:25:42 +0800</pubDate><description><![CDATA[AI 时代，技术人面临“泡沫破裂”风险：Vibe Coding 堆出的系统难维护、算力供应链断裂、信用危机浮现。但危机中亦藏机遇——工程纪律将回归，资深开发者、合规型 AI、本地模型与代码审计成新刚需。技术人应以 AI 为放大器，夯实底层能力，用契约驱动、框架约束、强制校验驯服生成式开发。如 GoWind 框架实践所示，通过 proto 统一事实源、分层约束与代码生成，实现“确定性开发”，在不确定性中构建可验证的信用资产。]]></description><category></category></item><item><title><![CDATA[GoWind Admin 拆解：一个 Sender 接口接 39 个通知渠道]]></title><link>https://blog.csdn.net/tx7do/article/details/168755495</link><guid>https://blog.csdn.net/tx7do/article/details/168755495</guid><author>tx7do</author><pubDate>Sat, 24 Oct 2026 09:33:09 +0800</pubDate><description><![CDATA[GoWind Admin 通过投递能力下沉、schema驱动注册、整包JSON配置三策，实现39种通知渠道的低成本扩展。核心设计：notify库专注“怎么发”，配置由SettingsSchema与Builder声明式注册，前端动态渲染；敏感字段加密落库、回显脱敏、留空不改，形成闭环。错误分类（ErrNotConfigured/ErrInvalidToken）驱动台账语义与自清理策略。从多列到单JSON列的存储反转，使新增渠道零DDL，维护成本回归内容维度，构建可复用的通知扩展范式。]]></description><category></category></item><item><title><![CDATA[GoWind Shop 拆解：订单超时关单——一个事务里的四联动]]></title><link>https://blog.csdn.net/tx7do/article/details/168767354</link><guid>https://blog.csdn.net/tx7do/article/details/168767354</guid><author>tx7do</author><pubDate>Sat, 24 Oct 2026 09:32:39 +0800</pubDate><description><![CDATA[GoWind Shop 的超时关单机制通过一个150行的事务实现库存、状态、支付、优惠券四联动回收，确保下单锁定资源精准归还。依托 asynq 延迟任务防重（TaskID + Unique）、执行侧幂等闸门与 expected_status 前置条件，构建闭环容错体系。核心经验：关单清单即下单锁资源；延迟任务需兜底；补偿操作须显式收窄权限。]]></description><category></category></item><item><title><![CDATA[GoWind OA 拆解：用 3000 行 Go 写一个够用的审批工作流引擎]]></title><link>https://blog.csdn.net/tx7do/article/details/168767379</link><guid>https://blog.csdn.net/tx7do/article/details/168767379</guid><author>tx7do</author><pubDate>Sat, 24 Oct 2026 09:32:17 +0800</pubDate><description><![CDATA[GoWind OA 自研轻量级审批引擎，3000行Go代码实现条件分支、并行会签、子流程与回退环。核心设计聚焦六大机制：JSON存图保障灵活性；编译期双向可达性校验（环合法）；运行期递归walker+步数限流与fail-closed策略；任务状态推导替代计数器实现会签/或签；审批时解析寻人并快照，确保不挂起；业务通过回调注册解耦，终态触发副作用。全链路权衡取舍清晰，兼顾可用性与复杂度控制。]]></description><category></category></item><item><title><![CDATA[GoWind Ledger 拆解：单式记账的余额一致性——confirm、补偿，以及没进事务的那些缝隙]]></title><link>https://blog.csdn.net/tx7do/article/details/168767395</link><guid>https://blog.csdn.net/tx7do/article/details/168767395</guid><author>tx7do</author><pubDate>Fri, 23 Oct 2026 08:10:52 +0800</pubDate><description><![CDATA[GoWind Ledger 采用冗余余额列设计，账户余额“存出来”而非“算出来”，依赖写路径严格维护一致性。其核心机制包括：confirm 确认流控制余额生效、RefundBalance 补偿删改操作、以及“copy-then-delete”更新策略确保补偿路径唯一。但存在三处裂缝：调整流水（ADJUST）无法回滚（因 SetBalance 破坏可逆性）、转账操作未在事务中执行导致单腿账、多币种换算逻辑缺失时点固化。此外，缓存列与实际使用脱节，暴露了“先建骨架再补血肉”的演进状态。本文揭示：记账系统的一致性]]></description><category></category></item><item><title><![CDATA[GoWind ERP 拆解：一个 ERP 里的三种一致性等级]]></title><link>https://blog.csdn.net/tx7do/article/details/168767473</link><guid>https://blog.csdn.net/tx7do/article/details/168767473</guid><author>tx7do</author><pubDate>Fri, 23 Oct 2026 08:10:23 +0800</pubDate><description><![CDATA[GoWind ERP 通过三种一致性机制应对不同链路：硬事务用于收货等原子性要求高的场景，确保数据完全一致；软失败+溯源字段用于审批后衍生单据，允许人工补救而不阻塞主流程；单体 SAGA 缝处理低库存补货，以事务后 defer + 幂等评估实现最终一致。全库依赖SQL 条件更新防范并发冲突，结合严格账龄报表口径与财务纪律，实现“按代价分级一致性”的工程化落地。]]></description><category></category></item><item><title><![CDATA[GoWind Kanban 拆解：看板拖拽背后——LexoRank、乐观锁与尽力而为广播]]></title><link>https://blog.csdn.net/tx7do/article/details/168767426</link><guid>https://blog.csdn.net/tx7do/article/details/168767426</guid><author>tx7do</author><pubDate>Fri, 23 Oct 2026 08:09:39 +0800</pubDate><description><![CDATA[GoWind Kanban 通过“服务端权威排序 + 乐观锁 + 尽力而为广播 + 差量兜底”四层架构，实现看板拖拽的实时同步。核心在于使用 LexoRank 算法生成可伸缩的字典序排序键，有效降低并发冲突；以乐观锁保障操作一致性；通过广播推送变更，结合差量同步修复丢包与断线问题；并采用一次性票据机制强化 WebSocket 安全准入。方案务实高效，适用于低频高语义协作场景，具备可复用的工程范式价值。]]></description><category></category></item><item><title><![CDATA[GoWind ShortPlay 深度拆解：三服务 BFF + Core，一条请求的完整工程链路]]></title><link>https://blog.csdn.net/tx7do/article/details/168743708</link><guid>https://blog.csdn.net/tx7do/article/details/168743708</guid><author>tx7do</author><pubDate>Thu, 22 Oct 2026 09:57:05 +0800</pubDate><description><![CDATA[本文深度拆解GoWind ShortPlay的工程链路：通过三服务（admin/app BFF + core）架构实现请求全链路追踪。聚焦“上下滑、发布、审核”三大场景，揭示三服务分工、gRPC契约统一、自研分片上传、状态机管控与鉴权透传机制。核心亮点包括：手写装配保障优雅停机、身份通过metadata跨服务透传、proto双协议同源生成、分片路由手动注册规避性能损耗。工程上以“契约优先+适度取舍”平衡可维护性与性能，展现高密度业务系统的实战设计哲学。]]></description><category></category></item><item><title><![CDATA[GoWind Ops 拆解：不引入分布式锁的多副本协调]]></title><link>https://blog.csdn.net/tx7do/article/details/168740131</link><guid>https://blog.csdn.net/tx7do/article/details/168740131</guid><author>tx7do</author><pubDate>Thu, 22 Oct 2026 09:28:22 +0800</pubDate><description><![CDATA[GoWind Ops 在不使用分布式锁的前提下，通过MQTT共享订阅、数据库条件更新（CAS）、Redis原子操作三层次机制实现多副本协调。核心思路：用Broker分流、以条件更新作抢答器、靠原子操作防竞态。针对定时任务、构建触发、告警外呼等重复问题，分别采用锚点CAS、占位认领、状态翻转等模式，确保幂等性与唯一性。审查发现三处窗口后，补全锁锚事务与原子化防抖逻辑，最终实现无锁下的高可靠多副本运行。]]></description><category></category></item><item><title><![CDATA[GoWind Ops 深度拆解：纯出站 Agent + MQTT 信令，把「管机器、跑项目、发脚本、构建分发」做扎实]]></title><link>https://blog.csdn.net/tx7do/article/details/168739730</link><guid>https://blog.csdn.net/tx7do/article/details/168739730</guid><author>tx7do</author><pubDate>Thu, 22 Oct 2026 09:25:11 +0800</pubDate><description><![CDATA[GoWind Ops 以纯出站 Agent + MQTT 信令为核心，构建安全高效的多节点运维体系。通过 MQTT $share 共享订阅实现 core 多副本负载均衡，终端流则全量广播保障完整性。依托 QoS 1 + request_id 幂等对账三板斧（台账先行、条件更新、30秒对账），确保指令可追溯、回执不丢失。Agent 采用 TOFU 注册与机器指纹认证，无入站端口，支持防火墙后设备管理。大文件分发走 MinIO 预签名直传，信令仅传控制指令，兼顾性能与安全性。系统职责清晰，依赖单向，开箱即用，真]]></description><category></category></item><item><title><![CDATA[RushWind Admin — 契约驱动：203 条路由零手写的工程化拆解]]></title><link>https://blog.csdn.net/tx7do/article/details/166945336</link><guid>https://blog.csdn.net/tx7do/article/details/166945336</guid><author>tx7do</author><pubDate>Thu, 01 Oct 2026 13:01:06 +0800</pubDate><description><![CDATA[RushWind Admin 通过 Protobuf 契约驱动，实现 203 条路由、441 条错误映射、198 个接口的零手写生成，构建期确定性产出路由表、错误码、服务接口与前端客户端，三端字节一致。以契约为唯一事实源，解决文档漂移、多端失同步等慢性病。生成器落地中踩中三大暗礁：第三方编译器丢弃自定义选项、UTF-8 BOM 引发跨工具链差异、路由遮蔽导致匹配歧义，均通过双编译管线、归一化处理与守卫测试应对。契约治理引入哈希门与漂移检测，杜绝手动修改，确保生成可靠性。]]></description><category></category></item><item><title><![CDATA[RushWind Admin — 用 Rust 写的企业级中后台，开源了]]></title><link>https://blog.csdn.net/tx7do/article/details/166945266</link><guid>https://blog.csdn.net/tx7do/article/details/166945266</guid><author>tx7do</author><pubDate>Thu, 01 Oct 2026 12:58:47 +0800</pubDate><description><![CDATA[RushWind Admin 用 Rust 构建企业级中后台，以 Protobuf 为唯一事实源，实现路由、接口、前端客户端等全链路编译期生成，确保一致性与可维护性。具备多租户存储层隔离、六类审计流、TOTP 多因素认证、双令牌会话管理、SSE 实时推送、脚本插件系统等企业级能力，支持 React/Vue 多端共享客户端。强调“平台厚、业务零侵入”，开箱即用，兼顾安全、性能与合规，推动“Go 写业务、Rust 扛平台”架构落地。]]></description><category></category></item><item><title><![CDATA[Go 写业务，Rust 扛底盘：一套可落地的混合架构]]></title><link>https://blog.csdn.net/tx7do/article/details/166944967</link><guid>https://blog.csdn.net/tx7do/article/details/166944967</guid><author>tx7do</author><pubDate>Thu, 01 Oct 2026 12:38:19 +0800</pubDate><description><![CDATA[本文提出“Go写业务，Rust扛底盘”的混合架构实践：基于变更成本（Go优势）与运行时成本（Rust优势）的差异，以“变化频率×延迟敏感度”为切分准则，将平台层（如鉴权、限流）划归Rust。通过四种集成模式（进程边界、Sidecar、FFI、WASM）按成本排序，推荐以共享proto的进程边界为主，实现高内聚、低耦合。附真实项目[ RushWind Admin ]验证，量化对比内存密度（低3-10倍）、尾延迟稳定性等收益，明确适用场景与反例，推动语言选型回归工程成本模型。]]></description><category></category></item></channel></rss>