技术纵深系列:把系统做对、算清、交出去
这一线写给要自己扛系统设计的人:一个人或一个小团队,接了行业系统,从库表到交付都得自己拿主意。全系列 12 篇,按依赖关系排的——前面的篇是后面的地基,按顺序读最省力。每篇都有能落库的表结构、能复算的算例和上线前要查的清单,不写「总之要重视」这种话。
- 多租户不是加一个 tenant_id:三种隔离模型各自的代价,什么时候能共享表、什么时候必须独立库;
- RBAC 不够用的地方:角色管得住菜单管不住数据,数据权限的五种变体怎么落;
- 一张 sys_dept 表撑不住三层:部门、门店、代理商各有边界,组织模型怎么建;
- 多租户最容易出事的 8 个位置:逐条排查,每处配了对应的防御写法;
- 订单状态机:别用 status=1,2,3:状态分域、迁移校验、非法边怎么挡;
- 支付回调出错时系统一声不吭:幂等、重试、对账三件套,缺一件都是事故;
- 分账的账要能倒推回去:每一分钱从用户付款到各方入账,链路必须可追溯;
- 账不平时要能说出错在哪一层:订单、支付、账本三边勾稽,最小实现;
- 私有化部署的最小交付包:拔掉网线还能装起来才算,清单直接可用;
- 数据迁移完了没人敢关旧系统:双写、核对、切换三步收尾,签核对表和口径表;
- 线上出问题先分清谁慢:一个人慢还是所有人都慢,定位路径完全不同;
- 主流程演示得再顺,客户还是要先导一个 Excel:导入导出打印,交付里最先被用的功能。
- 文件上传:直传、断点续传、秒传各解决什么:三个词是三个独立问题的解法,不是三级进化;落地顺序按文件分布和重复率定;
- 私有桶的签名 URL 怎么发:签什么、有效期听谁的、为什么不能进日志;
这一线持续更新中,冲量期新篇会按主题归进对应系列。