架构师实战入门-02架构分析方法和系统组成结构

本文章出自架构师实战入门实战课程,介绍了架构分析方法:系统工程思维,系统分解思维,面向过程分析,面向对象分析的核心要点。以及单体架构(ALL IN ONE)和分布式系统(复杂系统)架构不同视角下的系统组成结构。

一、架构分析方法-大纲

系统工程思维

系统分解思维

面向过程思维

面向对象思维

架构师应该如何分析

1.1系统工程思维

系统工程:把系统以及系统的相关事项当成一个整体

1、系统角度:系统是一个整体,在架构中要考虑各涉众,各类需求;

2、过程角度:架构涉及应该是全过程、全生命周期的,从需求到发布、试运行;到系统消亡;

3、团队角度:架构要满足团队要求,根据团队情况进行架构分层,技术选型

1.2系统分解思维

系统分解:分而治之思想,将系统分解为容易分析、理解和方便解决问题的粒度

1、将大系统分解为二级系统

2、将复杂问题分解为简单问题

3、将通用问题和专用问题分解

4、将稳定部分和不稳定部分分解

1.3面向过程分析

面向过程:通过流程化、模块化的思想进行分析,自顶向下逐层分析;

找到一个系统的入口,然后分析出每一步以及影响这一步的其他因素,从而定义这个系统。

1、自顶向下/自底向上

2、先整体后局部/先大后小

3、模块化/流程化

4、系统分解方法也属于过程分析方法

1.4面向对象分析

面向对象:万物对象,程序=对象+交互,系统=领域模型+交互

1、类、对象、关系

2、继承、封装、多态

3、类图、组件图,部署图,包图

4、用例图、活动图、顺序图,协作图,状态图

1.5架构师如何分析

综合运用系统思维,分解思维,过程思维,对象思维以及任何可用于架构的思维。

二、系统组成结构

单体系统组成结构(ALL IN ONE)

分布式系统组成结构(大型复杂系统)

系统组成的基本元素[逻辑视角]

2.1单体系统组成结构(ALL IN ONE)

系统描述

有一套基于B/S架构的客户关系管理系统,具有以下功能:

实现简单的客户信息管理;

可以对客户进行分类;

可以查看客户购买记录;

对客户进行回访。

目前使用ORACLE数据库进行数据存取;

分析结果(部分视角)

2.2分布式系统组成结构(大型复杂系统)

系统描述

有一套电商系统,具有以下功能:

用户可在线购买商品;

店主可申请开店、发布和管理自己的商品;

用户、店主可查看属于自己的订单;

平台支持在线支持,实现交易闭环;

对接物流平台,进行实时物品配送;

平台提供店铺装修功能;

目前使用MYSQLj数据库集群进行数据存取;

对热点数据进行缓存,加快访问速度;

对静态数据通过CDN加快数据访问

目前各系统进行了分布式架构,每个业务进行了拆分和服务化。

解析结果(部分视角)

系统部署角度

1)各系统独立集群部署;

2)接入反向代理或多级负载均衡;

3)运营商CDN机房部署和同步

4)MYSQL数据库集群

5)分布式缓存集群,MQ集群

2.3系统组成的基本元素[逻辑视角]

从逻辑视角,系统一般可分为子系统,模块,组件,接口,类,对象,数据库,表,记录等。

【预售】架构师入门实战课程

架构之家公众号-课程组,倾情推出

特惠价299元;名额有限,欲购从速!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180606B1ZK5200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券