架构设计
2020-03-31 08:36:13 29 举报
AI智能生成
架构设计思维导图
作者其他创作
大纲/内容
设计原则
合适优于业界领先
简单优于复杂
结构复杂性
逻辑复杂性
演化优于一步到位
设计流程
识别复杂度
构建复杂度的来源清单——高性能、可用性、扩展性、安全、低成本、规模
根据业务、技术、团队等综合情况进行排序
优先解决当前面临的最主要的复杂度问题
设计备选方案
评估和选择备选方案
360 度环评
详细方案设计
不但要进行备选方案设计和选型,还需要对备选方案的关键细节有较深入的理解
通过分步骤、分阶段、分系统等方式,尽量降低方案复杂度
设计团队,博采所长
是什么
系统与子系统
模块与组件
架构与框架
软件架构指软件系统的顶层结构
目的
为了解决软件系统复杂度带来的问题
高性能
What
与当前的技术发展状况与业务所处的阶段紧密相关
Why
追求良好的用户体验
满足业务增长的需要
How
单机
多进程
多线程
进程间通信
多线程并发
集群
任务分配
任务分解
简单的系统容易做到高性能
可以针对单个任务进行扩展
高可用
What
Why
硬件故障
软件BUG或网站更新升级发布
不可抗拒力
How
计算高可用
新增任务分配器
连接方式与管理
分配算法,主备如何分配
存储高可用
传输延迟
传输中断
高可用状态决策
独裁式
协商式
主备
民主式
Zookeeper
可扩展性
What
软件自身内部方面
软件外部方面
Why
快速响应变化
降低对现有系统的影响
How
预测变化
不能每个设计点都考虑可扩展性
不能完全不考虑可扩展性
所有的预测都存在出错的可能性
应对变化
封装变化层和稳定层
提炼抽象层和实现层
解决方案
分布式服务构建可复用的业务平台
分布式消息队列降低业务模块间的耦合
低成本
引入新技术
创造新技术
安全
功能安全
架构安全
规模
功能越来越多,导致系统复杂度指数级上升
数据越来越多,系统复杂度发生质变
0 条评论
下一页