架构学习-架构设计评估(九)

110 阅读2分钟

ATAM评审(Architecture Tradeoff Analysis Method)

表述部分(开局)

  • PMO-->Agenda(会议的起草者,控制会议过程中时间,防止拖堂).整体目标
  • 产品-->项目目标,上下文/功能点(陈述为主).产品业务目标
  • 架构-->架构vs业务,组件/流程图,上下游链路梳理.技术目标 这三个提前准备好

调查分析(对线)

  • 产品/架构-->高优先级场景(高->低)/实现难度(高->低)/安全性,性能评估等

场景讨论(打团)

  • 相关人士-->高优先级场景-架构技术方案/风险点和待确认事项/识别架构师没有识别的风险

报告生成

  • PMO-->会议纪要/共识事项/跟进事项/风险点

CBAM成本效益分析方法

与ATAM的区别

  • ATAM聚焦产品本身,通过架构决策实现业务目标
  • CBAM聚焦成本与收益

优先级评估

  • 根据ATAM评估选取1/3 TOP优先级项目(相亲大会种子选手)
  • 根据最好情况,最坏情况,现实vs期望情况这三方面进行评估(女嘉宾亮灯,哈哈哈)
  • 再次筛选业务场景

烧脑计算

  • 开发架构策略/确定架构的效用(女嘉宾深入了解)
  • 计算每个场景总收益,成本/收益ROI(经济基础,亮家底)
  • 最终优先级(心动女生) 举例说明 image.png

image.png

image.png 选择分值越大的效益越高

服务监控指标和调优思路

image.png

image.png

image.png

服务设计者提供者提供规约,业务方遵守

image.png

压力测试

通过逐步增加流量

  • 性能变化曲线
  • 最佳状态
  • 崩盘负载点

负载测试

通过逐步增加流量获取相关性能指标如:RT,speed,内存,CPU

  • 性能指标
  • 临界资源
  • 最大负载 负载测试不是要将系统压崩,测试系统某项或者某几项资源达到最大值的时候系统能达到的最大负载

稳定性测试

条件

  • 一定的负载条件下
  • 较长时间执行
  • 稳定性指标(控制线)

目的(发现资源瓶颈)

  • 不稳定因素
  • 系统瓶颈

稳定性测试范围

  • 链路
  • 测试场景

构建模型

  • 基线
  • 控制线
  • KPI(RT,系统资源)

分析测试结果

基线计算公式

image.png

确定最佳线程数

  • 增加线程数:接口QPS不变,甚至RT变长(线程数不能继续增加)
  • 减少线程数:接口QPS下降(说明离最佳线程数还有一定距离)

性能测试手段-并发用户模式和RPS模式

  • VU:虚拟用户并发数
  • RPS:request per second

image.png

业务容量规划

流量预估

image.png