一致性、会话、多租户,到中台分层与数据分析。
一、分布式基础
分布式一致性算法:Raft
Raft 把分布式共识拆成选主、日志复制和安全性三条规则,比 Paxos 更好讲。集群里最多一个任期的 Leader 对外服务,Follower 接收追加。日志必须连续提交:Leader 只提交当前任期、已被多数派复制的条目。选举用随机超时减少脑裂,多数派活着才能选出新主。
实现时要持久化当前任期、投票和日志,重启不能“忘了自己投过谁”。网络分区下少数派不能确认写入,客户端要能重试。成员变更要用联合共识或单步变更,避免同时换太多节点。etcd、Consul 都用 Raft。业务上把它当“如何在不可靠网络上复制状态机”,而不是当普通主从复制。调超时要匹配 RTT,过短会频繁选主。
分布式Session
分布式 Session 把登录态从单机内存挪到共享存储,这样多实例水平扩展时用户不会随机掉线。常见实现是 Redis 存会话、网关做粘滞,或彻底改为无状态 JWT。
共享存储要设过期、滑动续期和并发写入策略,避免多标签页互相覆盖。敏感字段不要明文塞进 cookie。注销必须主动删除服务端记录,单靠浏览器清 cookie 不够。
Redis 故障时要有降级:拒绝新登录或走只读缓存,而不是让所有人变成未登录。压测会话读写 QPS,热点 key 可用哈希打散。
多租户系统构架设计
【IT老齐439】多租户多数据、源动态管理、灵活路由_哔哩哔哩_bilibili
【IT老齐708】多租户应用五种架构模式_哔哩哔哩_bilibili
吊打面试官!全网最全多租户系统设计方案 - AI架构师汤师爷 - 博客园
-
数据库独立模式
-
共享数据库-独立模式(Schema)
-
共享数据库-共享表模式
-
混合模式(基于数据库独立模式、共享数据库-独立模式(Schema)、共享数据库-共享表模式)
-
容器化隔离模式(单元部署)
高并发热点账户性能攻坚
热点账户是短时间内被大量并发更新的同一行余额,例如平台总账或爆款商品库存。行锁和缓冲池会成为瓶颈,普通加索引解决不了“所有请求打同一主键”。
常见打法是拆账户分片、异步入账、热点缓存预扣,以及把流水与余额更新解耦。最终一致窗口要可对账,不允许静默丢更新。限流和排队比让数据库自己打转更可控。
压测必须复现单 key 冲突,而不是均匀随机账户。观测锁等待、redo 和缓存命中。活动结束后做全量对账,确认预扣与实扣能轧平。
二、中台与数据体系
数据中台
数据中台把各业务库的数据汇聚成可复用的主题域、指标和接口,减少每个项目从零拉数。常见分层是采集、ODS、明细、汇总和服务化,指标口径由统一字典约束。
成功与否看消费方是否真的复用,而不是仓库里有多少张表。要先治理主数据和口径,再谈实时大屏。权限与脱敏必须进平台,不能把宽表直接开放给所有人。任务调度失败要告警到负责人。技术栈可以是数仓加 API,也可以是湖仓,关键是血缘清晰、能回溯一份报表是怎么算出来的。
业务中台
业务中台抽取多个前台应用共用的能力,例如会员、交易、库存、营销,避免每个业务线重复造轮子。它卖的是稳定的领域服务,而不是一个更大的单体。
边界要按领域切,不要按技术层切。会员中心可以共享,但垂直行业的独特流程应留在前台。服务要有明确的 SLA、版本和兼容策略,否则中台会变成发布瓶颈。组织上也要有对应的负责人,纯技术团队很难推动业务复用。先沉淀高频、稳定的能力,再逐步下沉;一上来就“全公司中台化”通常会失败。
什么是数据仓库和数据湖?
数据仓库存放清洗后的结构化数据,面向报表和固定分析,模式先于写入。数据湖先把原始文件、日志和半结构化数据廉价堆进对象存储,模式在读取时再解析。湖仓一体试图兼顾两者。
选型看延迟、治理和技能栈。财务对账适合仓库的强约束;机器学习特征工程常从湖里的原始事件起步。没有元数据和权限,湖会变成垃圾场。
落地先定义主题域和数据所有者,再选引擎。质量规则、血缘和分区策略比纠结品牌更重要。成本上扫描量往往比存储更贵,查询要下推谓词。
三、数据分析
数据分析和挖掘
数据分析回答的是“发生了什么”,挖掘试图找出“为什么发生、接下来可能怎样”。分析依赖清洗后的宽表、维度和指标;挖掘常用聚类、关联规则、分类和异常检测。两者都要先把问题说清楚:是要降低流失、提高转化,还是发现作弊。没有业务假设的挖掘,很容易变成刷直方图。
流程上建议先做描述统计和分群对比,再做特征工程与模型。训练集和验证集按时间切分,避免把未来信息泄露进特征。结果要能落到可操作的策略:例如给哪个客群发券、上调哪个风控阈值。模型上线后要监控效果衰减,因为用户行为会随策略改变。把数据字典和指标口径写清楚,分析结论才能在团队里复现。
量化
量化交易用数据和模型辅助下单,流程包括采集行情、清洗特征、回测、风控和实盘执行。它不是“预测必涨”,而是在约束下把规则执行得可重复、可审计。
回测要处理未来函数、成交滑点和费用,否则曲线好看实盘崩溃。研究与交易账号隔离,密钥与策略代码分权。风控限额、回撤熔断必须写在执行层,不能只在笔记本里。延迟敏感策略要贴近交易所,低频策略更看数据质量。合规按所在市场规则来。工具可以是 Python 研究栈加独立执行网关,评估看实盘与回测的偏差,而不是夏普比率本身。
DataEase开源BI工具
DataEase 是开源 BI,用来连接各类数据源、做可视化仪表盘,让业务人员少写 SQL。它提供数据源管理、数据集、图表和分享链接,适合中小团队快速搭内部看板。
落地先把口径沉淀成数据集,而不是每个图表各写一段查询。权限按组织与数据集授权,避免把生产库只读账号发给所有人。慢查询要下推到数仓或物化。升级前备份配置库。嵌入到业务系统时注意 SSO 与行级过滤。它解决的是“看得见”,治理和调度仍要靠上游数据平台。选型时对比许可证与插件生态。
评论