架构(一)|青训营笔记

78 阅读2分钟

架构

简介

架构又称软件架构,是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计,通俗点来说就是实现一个软件有很多方法,架构在方法选择上起着至关重要的知道作用

单机架构

软件系统需要具备对外提供服务,单机就是把所有功能是现在一个进程里,并部署在一台机器上

优点: 简单

缺点: 运维需要停服

单体架构、垂直应用架构

单机架构: 分布式部署

垂直应用架构: 按应用垂直切分的单体

优点: 水平扩容、运维不需要停服

缺点: 职责太多,开发效率底、爆炸半径达

SOA、微服务

SOA: 将应用的不同功能单元抽象为服务,定义服务之间的通信标准

微服务: SOA的去中心化演进方向

缺点: 数据一致性、可用性程度、如何治理、解耦和过微的取舍

云计算

云计算是指通过软件自动化管理,提供计算资源的服务网络,是现代互联网大规模熟悉分析和存储的基石

基础: 虚拟化技术和编排方案

架构: IaaS、PaaS、SaaS、FaaS

云原生

云原生技术为组织在公有云、自由云、混合云等新兴的动态环境中,构建和运行可弹性拓展的应用提供了可能

弹性资源计算

类型

服务资源调度:微服务、大服务

计算资源调度

  • 在线:热销榜单
  • 离线:热销榜单更新

消息队列

  • 在线:削峰
  • 离线:大数据分析

弹性存储资源

类型

经典

  • 对象:宣传视频
  • 大数据:用户消费记录

关系型数据库:收银记录

元数据:服务发现

NoSQL

DevOps

DevOps是云原生时代软件交付的利器,贯穿整个软件开发周期,结合自动化流程,提高软件开发,交付效率