当前位置: 首页 > 工具软件 > architect > 使用案例 >

Architecture-架构

通沛
2023-12-01

背景

结构问题		
	定义、设计软件模块化、模块之间交互,用户界面风格、对外接口方法、高层事务的对象操作、流程
	[A]整体问题		系统结构	
	[B]局部问题		[1]数据结构
					[2]算法
					[3]编程范式		面向过程、面向对象
	[1]元素组成、功能分配				1
	[2]通信、同步、数据访问协议			1-n
	[3]总体组织结构、全局控制结构		n-n
	[4]物理分布
	[5]定标性能
名词
	集群		同一业务,部署多台服务器		[单位时间执行任务数量	提高		n/t	]
	节点		不同业务,部署不同服务器		[单位任务数量执行时间	缩短		t/n	]

概念

架构		Architecture
定义		关于软件整体结构与组件的抽象描述
作用		指导软件系统设计、解决复杂架构问题		[设计决定 = 商业、技术决定]
语言		ADL架构描述语言

内部		系统完整、约束条件、审美需求
外部		用户环境、开发环境
		
要素		[1]Component	元件	
		[2]Connector	联接器		描述元件之间通讯路径、通讯机制、通讯效果
		[3]Task-Flow	任务流		描述系统使用元件、联接器的完成流程
对象		[1]抽象组件		组件之间的连接、通讯描述
		[2]实际组件		实现阶段,具体类、具体对象
		[3]组件连接		接口
层次		[1]逻辑架构		软件系统的元件关系	视图层、控制层、业务层、数据持久层
		[2]物理架构		硬件系统的元件部署	网络分流器、代理服务器、WEB服务器、应用服务器、数据服务器
		[3]系统架构		系统的非功能性特征	可扩展、可靠、强壮、灵活、性能
视图		
		[1]用例视图		用例、场景	[用例模型子集]
						用例图		描述用例、主角、普通设计类
						时序图		描述设计对象、协作关系
		[2]逻辑视图		系统、子系统、模块、层级、设计包、设计类[设计模型子集]
		[3]实施视图		实施模型[模块、包、层]
		[4]进程视图		进程、线程的描述:交互、配置
						设计对象、类向任务的分配情况
		[5]配置视图		物理节点的描述、任务分配		部署模型子集
流程		[1]任务描述
		[2]需求分析
		[3]设计流程
		[4]编码
		[5]测试
		[6]交付
分类
	[1]All In One			单一应用框架				
		应用		数据访问框架(ORM)		
		目的		简化CRUD			
		特性		单一应用
	[2]Vertical Application	垂直应用框架
		应用		WEB框架(MVC)			
		目的		加速前端页面开发	
		特性		多个应用
	[3]Distributed Service	分布式应用框架
		应用		远程调用(RPC)			
		目的		业务复用整合		【应用交互】
		特性		服务中心
	[4]Elastic Computing	流动计算架构
		应用		资源调度、治理中心(SOA)	
		目的		提高机器利用率	【服务调用】
		特性		调度中心
		
对比					部署形式		资源问题				构建交付
	[1]单体式		集群部署		共享内存、数据库		同时
	[2]分布式		服务部署		分而治之				独立

单体架构

定义

集中式存储

定义

分布式架构

分布式架构	Distributed System		
定义
特点
	性能		跨进程、跨网络	[网络延迟、带宽限制]
	运维		单个系统拆分多个服务,分别配置、部署、监控、日志处理
	通信		中间件、异步通信
	故障		!!!
	选择		CAP[一致性、可用性、分区容错性]
原理
	[1]单台计算机,分解问题		
	[2]多台计算机,分别处理
	[3]单台计算机,综合计算结果
应用		
	[1]分而治之		[1]业务拆分	
					[2]网站拆分		产品线分别运营
					[3]应用拆分		独立部署、超链接建立关系、消息队列分发数据、存储系统共用数据
	[2]服务治理		[1]业务服务
					[2]公共服务
	[3]降低耦合		[1]服务		生成消费模式
					[2]消息		发布订阅模式	
	[4]平台复用		[1]负载均衡
					[2]失效转移
					[3]版本管理
					[4]实时监控
					[5]高效远程通信
					[6]整合异构系统				
					[7]入侵应用最小

分布式存储

Distributed Storage System
定义		分散存储
角色
	[1]位置服务器		定位存储信息
	[2]存储服务器		分散存储数据
一致性		故障、并行存储,数据副本
可用性		部分节点故障,不影响读写请求
容错性		网络故障

微服务架构

定义		云中部署应用和服务的技术
特点		围绕业务领域组件创建应用,独立开发,管理加速
 类似资料: