后端开发服务通用方案设计模板

808 阅读3分钟

XXX 项目

方案(架构)设计评审V1.0

修订记录

日期修订版本修改描述作者
xxxx-xx-xxV1.0新建Xxx
    
    
    

 

一,前言

1.1 需求背景(需求分析)

xxx

 

1.2 名词解释

术语英文全名中文解释
   
   
   

二,系统目标

系统设计的预期目标,比如支持的QPS, 日活,机房的多活部署目标等

 

三,系统概述

3.1 系统用例

3.1.1 【示例】

 

3.2 系统流程图

3.2.1 整体业务流程图

Xxx

3.2.2 关键模块流程图

xxx

3.3 系统架构

3.3.1 系统整体架构设计

XXXXXXX

 

3.4 系统模块(服务)划分

按业务形态对需求进行拆分,主要涉及到哪些功能模块,按服务的维度来拆分主要涉及哪些服务,每个服务负责哪些功能的划分。

 

3.5 涉及的外部系统

涉及的外部依赖系统

 

3.6 方案选型决策

备选方案1

备选方案2

备选方案3

 

可以将系统设计的其他方案,待决策一些中间件的选型等等

 

四,关键任务描述

4.1  通过 业务流程图、时序图等,描述方案中 关键的核心任务的具体细节业务流程,数据流向等

五,存储设计

  •  如果是关系型数据库(Mysql),需要描述ER图,各个表的表结构字段以及多活等;
  • 如果涉及到 Redis 输出主要的key的结构,key的预估数量,过期时间/过期策略,key/value缓存的大小等等。是否需要多机房,多机房同步策略)
  • 如果涉及 ES 输出对应的 索引结构的mapping,分片shard和副本的设置,容量的预估等等,是否需要多机房,多机房同步策略
  • 如果涉及 MongoDB 的文档结构说明,是否需要多机房,多机房同步策略
  • 其他存储等

5.1 数据库E-R关系

 xxx

5.2 表字段设计

5.2.1 示例Demo表(t_demo(表名))

列名类型长度说明主键&索引允许为空默认值
active_idunsigned int活动IDPKN0
active_namevarchar120活动名称N‘’
active_descvarchar256活动描述N‘’
demo_urlvarchar512活动示例N‘’
begin_timeunsigned int活动开始时间N0
...
operatorvarchar64操作者N‘’
insert_timeunsigned int插入时间N0
update_timeunsigned int最后修改时间N0

5.3 多活设计

是否需要多活,如何实现多活

 

六,高可用设计

6.1 数据一致性

xxx

6.2 多活架构设计

xxx

6.3 关键路径的熔断降级

xxx

6.4 扩展性设计

Xxx

 

七,容量预估

1,需要预估 该方案上线,预计需要新增多少规格的实例节点

2,分布式缓存redis的预计容量占用

3,mysql、mongoDB ,ES 存储的数据量级,如果是 新增的集群,预计什么规格等

4,其他相关的容量预估

八,监控告警

8.1 监控项

业务模块(PSA)监控内容监控平台是否告警备注
xxxx日志监控关键字:xxxx云平台 
xxxxxxx接口监控:请求量,失败率,超时率,耗时...自定义监控 
     
     

 

九,风险点预估

说明整个架构落地的主要风险点是什么,依赖方是谁,具体根据的责任人是谁,以及风险如果发生的备选方案是什么

 

十,接口设计

十一,任务分解及依赖

功能模块功能点责任人开发时间/人天备注
XXXXXxx    
xxx    
      
      
      
      

 

十二,附录

xxx

十三,评审记录

评审时间主要参评人评审建议