如何做好架构设计,架构设计有章可循吗?( 四 )


如何做好架构设计,架构设计有章可循吗?

文章插图
??2、集中
不同的系统应用 , 使用同一个数据库,一般具有关联属性的应用可以采用这种方式,比如一个系统分为服务端和管理端,但都属于一个系统,则可以使用同一个数据库 。
如何做好架构设计,架构设计有章可循吗?

文章插图
??3、分区
水平分区
水平分区即我们常见的分表方案,当一个 schema 无法满足我们的数据量要求时,可以划分为多个分区,每个分区存储一部分数据 。
如何做好架构设计,架构设计有章可循吗?

文章插图
??垂直分区
垂直分区是分区策略的另外一个维度 , 当我们单库无法承载巨大的数据量时,也可以根据数据的类别,进行垂直分区 。
如何做好架构设计,架构设计有章可循吗?

文章插图
4、复制
多个数据库保存相同的数据,根据制定的更新策略保证不同库之间的数据同步,我们常用的读写库分离,即为此方案 , 主库提供写能力,从库提供读能力,其中从库的数据是根据主库数据同步而来 。
如何做好架构设计,架构设计有章可循吗?

文章插图
??5、子集
根据一些特殊的场景要求 , 需要保存原数据的部分数据,例如 Application1 保存全量订单,application2 只需要部分出票成功的订单,进行后续分析操作,则可以使用子集的策略进行数据视图设计 。
如何做好架构设计,架构设计有章可循吗?

文章插图
??6、重组
通过多个不同的 application 作为数据来源,异构至其他 application , 用于数据的分析或后续流程使用 。
如何做好架构设计,架构设计有章可循吗?

文章插图
总结架构设计的三个阶段:预备架构阶段;概念架构阶段;细化架构阶段
架构设计的四个要素:需求结构化;分析约束的影响;确定关键质量;确定关键功能
概念架构的三个步骤:基于关键功能初步设计;系统高层分割;分析非功能需求
细化架构的五个视图:逻辑视图;开发视图;运行视图;物理视图;数据视图
一个贯穿环节:非功能需求的考虑
参考资料
1.《一线架构设计指南》
 
作者:京东零售 冯晓涛
来源:京东云开发者社区 转载请注明来源

【如何做好架构设计,架构设计有章可循吗?】


推荐阅读