• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Software Architecture: The Hard Parts Modern Trade-Off Analyses for Distributed Architectures学习笔记

武飞扬头像
kgduu
帮助1

1、总览

学新通

 2、拆分

2.1 识别耦合

学新通

2.2 架构模块化

学新通

2.3 架构分解

 学新通

2.4 数据拆分

学新通

2.5 服务粒度

粒度的拆分和合并有相关的驱动因素 

学新通

3、合并 

3.1 重用模式

学新通

3.2 数据所有权和分布式事务

学新通

 后台同步模式优缺点

优点 缺点
  • 服务解耦
  • 响应快
  • 数据源耦合
  • 打断边界上下文
  • 实现复杂
  • 业务逻辑可能有重复
  • 最终一致性缓慢

基于编排请求模式的优缺点

优点 缺点
  • 服务解耦
  • 数据一致性及时
  • 原子业务请求
  • 反应较慢
  • 错误处理复杂
  • 通常要求补偿事务

基于事件模式优缺点

优点 缺点
  • 服务解耦
  • 数据一致性及时
  • 响应快
  • 复杂的错误处理 

3.3 分布式数据访问 

学新通

 服务间调用模式优缺点

优点 缺点
  • 简单
  • 无数据量问题
  • 网络、数据、安全延时(性能)
  • 可伸缩性和吞吐量问题
  • 无容错(可用性问题)
  • 需要服务间协议 

列架构复制模式优缺点

优点 缺点
  • 很好的数据访问性能
  • 没有可伸缩性和吞吐量问题
  • 没有容错问题
  • 没有服务依赖
  • 数据一致性问题
  • 数据所有权问题
  • 要求数据同步

复制缓存模式优缺点

优点 缺点
  •  很好的数据访问性能
  • 没有可伸缩性和吞吐量问题
  • 没有容错问题
  • 数据保持一致性
  • 数据所有权保持
  • 云和容器配置很难
  • 不适用于大数据量
  • 不适用于很高的更新频率
  • 初始服务启动依赖 

数据域模式优缺点

优点 缺点
  • 很好的数据访问性能
  • 没有可伸缩性和吞吐量问题
  • 没有容错问题
  • 没有服务依赖
  • 数据保持一致性 
  • 更大的边界上下文管理数据改变
  • 数据所有权治理
  • 数据访问安全 

3.4 分布式工作流

 学新通

 编排模式优缺点

优点 缺点
  • 中心化工作流
  • 错误处理
  • 可恢复性
  • 状态管理 
  • 响应时间
  • 容错
  • 可伸缩性
  • 服务耦合

协调模式优缺点

优点 缺点
  • 响应性
  • 可伸缩性
  • 容错
  • 服务解耦
  • 分布式的工作流
  • 缺省状态管理 
  • 难以处理错误
  • 恢复比较困难

前端控制器模式优缺点

优点 缺点
  • 在协调中创建了伪编排
  • 使得查询状态变得简单
  • 在一个域服务中添加了工作流状态
  • 增加了通信开销
  • 不利于性能和伸缩

无状态协调模式优缺点

优点 缺点
  • 提供高性能和伸缩
  • 极度解耦
  • 工作流状态必须动态生成
  • 复杂的工作流程会迅速增加复杂性

标志耦合模式优缺点

优点 缺点
  • 允许域服务传递工作流状态不需要向状态所有者查询
  • 无需前端控制器前端控制器
  • 协议必须足够大来适配工作流状态
  • 不提供即时状态查询

3.5 事务Saga

 有八种形式,依赖于通信,一致性及协同

学新通

3.6 协议

 学新通

严格协议的优缺点

优点 缺点
  • 保证协议准确性
  • 版本控制 
  • 构建时间验证
  • 更好文档化
  • 紧耦合
  • 版本过多,不易于管理

 松散协议的优缺点

优点 缺点
  • 调度解耦
  • 容易演进
  • 协议难以管理 
  • 需要适应度函数

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgfekai
系列文章
更多 icon
同类精品
更多 icon
继续加载