Please enable JavaScript.
Coggle requires JavaScript to display documents.
架构设计 - Coggle Diagram
架构设计
基本原则
可升缩性
分类
水平伸缩
通过增加节点来分担负载
比如通过增加服务器来处理更多的请求
垂直伸缩
通过增加单个服务器的资源(CPU或内存)来提升性能
比如升级服务器的硬件配置
策略
无状态服务:采用无状态服务,使得请求可以分配给任意一台服务器处理
分布式缓存:通过分布式缓存,减少数据库负载
分布式数据库:设计分布式数据库,进行数据的分片和复制
概念
指的是系统能够在负载增加时,同过增加资源来提升系统性能
可靠性
概念
指的是系统在特定条件下和规定时间内,能够无障碍运行的能力
策略
多副本机制:实施多副本机制保证数据的高可用性
健康检查和故障切换:实施健康检查和自动故障切换机制,确保某个节点失效时,其它节点能够无缝接管服务
熔断器:使用断路器模式防止系统在部分组件失效时,而不会使得整个系统崩溃
灾难恢复
概念
指的是在遭遇灾难(系统崩溃)时,能快速恢复系统功能的能力
策略
备份策略:采用数据备份策略,定期备份数据到不同的地理区域
异地多活:设计异地多活或主从架构,确保在其中一个数据中心失效时,其它数据中心能够继续提供服务
演练:定期进行灾难恢复演练
系统架构
知识点
灾难恢复
策略
制定计划:制定详细的灾难恢复计划,包括恢复步骤和人员分工
定期快照:使用快照技术定期备份数据,确保在灾难发生时能快速恢复数据
异地架构:部署异地容灾架构,本地数据中心失效,异地数据中心可以快速接管服务
高可用
概念
能够最大限度的减少停机时间,保证服务的可持续性
策略
多实例部署:采用多实例部署,确保某个实例失效,其它实例可以继续提供服务
异地多活:实施跨数据中心的多活架构,提高系统的容错能力
Kubernates:使用自动化运维工具Kubernates进行故障检测和自动恢复
可扩展性
策略
分布式架构:使用分布式架构,分布式计算和存储大数据
弹性收缩:设计弹性收缩机制,根据负载动态调整资源配置
微服务架构:使用微服务架构,多个独立的服务,可以单独部署和扩展
负载均衡
概念
将请求分发到不同的服务器上
策略
负载均衡器:使用硬件负载均衡器(F5)和软件负载均衡器(Nginx、Haproxy、LVS)
DNS负载均衡器:使用DNS解析功能将请求分发到不同的服务器上
性能优化
策略
数据库优化:使用数据库索引、查询优化、分库分表等
异步处理:使用异步处理和消息队列等技术优化系统的并发能力
缓存技术:使用CDN、Redis等缓存技术减少对服务器的依赖,提高响应速度
代码优化:优化代码减少不必要的计算和资源消耗
概念
系统架构是指设计和表述一个信息系统的整体结构,包括硬件、软件、网络、数据存储和交互方式等