架构设计|青训营笔记

57 阅读2分钟

这是我参与「第五届青训营」笔记创作活动的第七天,简要介绍了架构设计和云计算相关知识,也了解架构设计工作的具体流程

架构

什么是架构

  • 定义
    • 软件架构
      • 整体结构和组件的抽象描述
      • 指导软件系统各方面设计
      • 用于方法选择
  • 分类
    • 单机:所有功能都在一个进程里,并部署在一台机器上
      • 优点:简单
      • 问题
        • C10K problem【排队】
        • 运维停服
      • image.png
    • 单体架构
      • 分布式部署
      • 多服务器分流,功能未分离
      • image.png
    • 垂直应用结构【按照应用/功能划分】
      • 按应用垂直切分的单体
      • 优点:
        • 水平扩容
        • 运维不需要停服
      • 缺点:
        • 职责太多(未充分分工)
        • 爆炸半径大,一个师傅出错,一条链出错
      • image.png
    • SOA架构 service-oriented architecture
      • 不同的功能单元抽象为服务
      • 定义服务间的通信标准
      • SOA去中心化演进方向【微服务】
      • image.png
      • image.png
  • 问题
    • 数据一致性
    • 高可用 服务间合作
    • 治理 容灾
    • 解耦 vs 过微 成本高

企业级后端架构

  • 云计算 - image.png
  • 云原生
    • 定义
      • 组织公有云,自由云,混合云等新型的动态环境中,构建和运行可拓展的应用的技术集合
    • 相关技术
      • 弹性资源
        • 虚拟化容器,不需要关注硬件
        • 快速扩缩容
        • 便于沟通
        • 类型
          • 计算资源
            • 服务资源调度
              • 微服务
              • 大服务:长时间占用
            • 计算资源调度
              • 在线:榜单
              • 离线:榜单更新
            • 消息队列
          • 存储资源
            • 经典
              • 对象存储
              • 大数据:相关信息记录
            • 关系型数据库
            • 元数据
            • NoSql
      • devOps
        • 软件开发??
        • 敏捷开发
        • CI/CD
      • 服务网格
        • 是微服务之间通讯的中间层
        • 服务与网络通信解耦合
        • 异构系统的治理统一化 py,java,go...
        • 复杂治理能力
        • image.png
      • 微服务架构
        • 通信标准
          • HTTP
          • RPC //微服务中间件
          • image.png

标题:架构定义解析 - 掘金

网址:juejin.cn/course/byte…