摘要:
分布式缓存架构模式 数据缓存 缓存中存储业务数据 用什么缓存系统 如何解决数据一致性问题 数据实时性要求高或者都多写少 结果缓存 用什么缓存系统 缓存有效位与结果新鲜度的人平衡 计算量大但是数据实时性要求不高 一致性复杂度 先写缓存后写存储 写存储失败后数据异常 先写存储后写缓存 缓存不更新,读物数 阅读全文
摘要:
缓存原理与设计框架 缓存(cache)介于速度相差较大的两个硬件之间,调解速度传输差异 --空间换时间 3W1h 内容 有效期 缓存方案 http缓存 app缓存 redis memcache…… 更新机制 过期更新(有效期内一直使用缓存,超过有效期后重新读取 如http) 定期更新(定时更新缓存) 阅读全文
摘要:
存储架构设计总思路 估算性能需求 基于实际的业务场景估算存储量,读写性能 用户量预估 规划 根据成本预算目标确定 推算 基于已有数据推算 对比 跟已有标杆对比 用户行为建模 行为 用户的典型行为 数量 采取某种行为的数量 频率 用户某种行为频率 性能需求估算 数据量 请求量 预留量 选择存储系统 根 阅读全文
摘要:
分片架构 通过叠加更多的服务器来提高性能 分片规则 选取技术比较大的某个数据键值,让数据均匀分布,避免热点分布 适合主业务数据 hash分片 分布均匀但是无法范围查询,扩容很麻烦 范围分片 分布不均匀,支持范围查询,扩容不用处理历史数据 路由规则 静态路由 配置文件 实现简单但是无法动态扩容或平衡数 阅读全文
摘要:
高可用相关的特征 问题 故障 可用、可恢复 复制架构 灾难 可用 多活架构 可恢复 备份 指标 RPO 最大可接受的损失的数据,备份和复制不能绝对实时 RTO 最大可接受系统恢复的时间-恢复系统使用 WRT 最大可接受业务恢复的时间(需要业务测试检查校验等) MTD 最大可接受宕机时间 RTO+WR 阅读全文
摘要:
数据库读写分离 主从结构,主写从读,主复制数据到从,程序判断写请求只发送主机。 复杂度: 复制延迟(主从随机读数据) :读写绑定(写死,业务侵入大)、 二次读取(主机压力大)、业务分级(拆分读写操作时效要求的任务) 任务分解 程序代码封装 sharding-jdbc(语言过多,工作量大) 中间件封装 阅读全文
摘要:
备选架构:拆解系统,得到4R 备选结构设计文档 详细架构 细化系统明确4r,优化系统提升质量 详细架构设计文档 架构规范(提升效率) 交互协议 数据格式 开发框架 架构质量(提升质量) 可测试 可维护 可观测 …… 方案设计 基于架构实现需求 项目方案设计文档 架构师文档写作 业务背景:解决的问题, 阅读全文
摘要:
1、备选方案设计技巧 备选架构 架构模式 高性能 负载均衡 准备 集群 分片 高可用 复制数据 决策状态 可扩展 微服务 微内核 技术选型 存储 mysql、redis、es 负载均衡 dns\Nginx、lvs 分布式 zk raft 头脑风暴--红线筛选(约束条件)--4R设计 2、备选方案选择 阅读全文
摘要:
1、 利益干系人分析 投资人 内部投资人(老板) 时间 成本 竞争力 外部投资人 价格 成本 竞争力 监管者 政府监管者 合规、处理投诉 媒体监督者 消息披露、事件回应 维护者 可维护性 高可用 构建者 技术、复杂度、时间 使用者 易用性、高可用 评估者 可观测性、可测试性 2、利益干系人处理流程 阅读全文