• 架构分层


    一、高可用架构为什么需要分层
     
    1. ALLIN ONE 架构的缺点
        – 整个架构只有一个模块
            • 数据部分、逻辑部分、接入部分、展示部分等
        – 架构存在问题 
            • 耦合严重
            • 职责不分明
            • 模块庞大、臃肿
            • 开发成本高、效率低下
            • 运维成本高
            • 组件间相互影响,一旦一个组件有问题,整个服务都受影响 
            • 扩展性差
            • 性能极限差
            • 牵一发而动全身!!!!   
     
    2. 服务高可用分层设计的好处
        – 模块耦合性低
        – 模块职责分明
            • 数据层、逻辑层、接入层、展示层等等
        – 模块间不再相互影响
        – 模块独立扩展
        – 系统整体性能高
     
     
    二、高可用架构分层设计原则
        – 数据服务和逻辑服务分离 
            • 数据存储
            • 业务逻辑
        – 逻辑服务和接入服务分离 
            • 业务逻辑
            • 接入层
        – 接入服务和展示服务分离 
            • 接入层
            • 数据展示
        – 分层服务功能单一 
            • 数据
            • 逻辑 
            • 接入
            • 展示 
            • ……
        – 分层间低耦合 
            • 接口交互
        – 分层内高内聚
            • 功能聚焦单一
        – 分层适中
            • 层次过多
                – 请求交互路径长
                – 请求响应延迟高
                – 层次多,运维成本高
                – 定位问题涉及层次多,定位复杂多增加,定位时间长
            • 层次过少
                – 每个层次功能不单一,耦合性高 
                – 模块内组件间相互影响高
                – 高可用无法保证
     
     
    三、高可用架构如何分层
    高可用架构分层
        – 前端架构
            • MVC架构分层
        – 后端架构
            • 按照功能水平划分
                – 四层
                    » 接入层、逻辑层、数据层、数据存储
                    » 接入层、逻辑层、原子服务层、数据存储
                – 五层
                    » 接入层、序列化层(异步消息队列)、逻辑层、数据层、数据存储
            • 按照业务垂直拆分
            
  • 相关阅读:
    VMware安装CentOS系统与配置全过程
    Matplotlib学习笔记
    python正则表达式字符记录
    HyperLedger Fabric 学习思路分享
    fabric-sdk-container v1.0-beta 新增支持多服务节点
    HyperLedger/Fabric SDK使用Docker容器镜像快速部署上线
    HyperLedger/Fabric JAVA-SDK with 1.1
    HyperLedger Fabric 1.1 手动部署单机单节点
    Hyperledger Fabric CA User’s Guide——配置设置(四)
    Hyperledger Fabric CA User’s Guide——开始(三)
  • 原文地址:https://www.cnblogs.com/756623607-zhang/p/7503150.html
Copyright © 2020-2023  润新知