架构实战营模块二总结
一、如何设计可扩展架构
1.1 架构设计复杂度模型

业务复杂度和质量复杂度是判断架构复杂度的重要维度。业务流程越复杂,业务复杂度越高,技术栈越复杂,质量复杂度越高。
1.2 不同架构的复杂度

微服务架构,业务复杂度高,质量复杂度低;
1.3 可扩展
可扩展包括:可理解和可复用,可理解--反面例子,淘宝一个子系统扩展,拉来 30 多个部门开会。
1.4.可扩展复杂度模型

可扩展包括:架构可扩展,应用可扩展,代码可扩展。
1.5 拆分复杂度模型

拆分包括拆分形态,从大到小拆分;拆分粒度,内部复杂度和外部复杂度。

1.6 封装复杂度模型

1.7 封装规则技巧

1.8 封装案例----规则引擎

1.9 封装案例---OSGI 微内核

1.10 封装---Linux VFS 抽象层

1.11 封装案例---装饰着设计模式

二、如何设计高性能架构
2.1 高性能复杂度模型

2.2 单机高性能

2.3 集群高性能

2.4 任务分配你 DNS

2.5 任务分配 Nginx

2.6 任务分配---Memcached

2.7 任务分解

2.8 分解案例 1-微信服务拆分

2.9.数据库读写分离

2.10Zuul

三、如何设计高可用架构
3.1 高可用复杂度模型

3.2 任务分配


3.3 任务分解

3.4 存储高可用

3.5 独裁式案例

3.6 民主式

四、如何全面提升架构设计的质量
4.1 低成本优化措施

4.2 安全性

4.3 架构安全

4.4 业务安全

4.5 可测试性
软件系统在测试环境下能否方便的支持测试各种场景的能力

4.6 可维护性
软件系统支持定位问题、修复问题的能力

4.7 可观测性
软件系统对外展现内部状态的能力

4.8 设计框架步骤

4.9OWASP
OWASP:放式 Web 应用程序安全项目(OWASP,Open Web Application Security Project)是一个组织,它提供有关计算机和互联网应用程序的公正、实际、有成本效益的信息。其目的是协助个人、企业和机构来发现和使用可信赖软件。
4.10SSL
SSL(Secure Sockets Layer 安全套接字协议),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层与应用层之间对网络连接进行
加密。
评论