高并发系统设计 概述

通用方法

  • Scale Out
    横向扩展,分而治之,采用分布式布署的方式分流,让每个服务器都承担一部分并发和流量
  • 缓存
    使用缓存来提高系统性能,好比“拓宽河道”。任何能够降低响应时间的中间件。缓存思想遍布很多设计领域
  • 异步
    在某些场景下,未处理完成先返回,再通知。

** 高并发系统的演进应该循序渐进,以解决系统中存在的问题为目的和驱动力 **

设计目标

高并发是运用设计手段让系统能够处理更多并发请求,这是一切架构设计的背景和前提

  • 高性能
    • 性能优化原则
      • 问题导向
      • 二八原则
      • 数据支撑
      • 持续长久
    • 性能度量指标
      • 响应时间: 平均值、最大值、分位值
      • 吞吐量
    • 性能优化思路
      • 提高处理核心数
      • 减少单次任务响应时间 I/O密集还是CPU密集
  • 高可用
    • 度量
      • MTBF Mean TIme Between Failure
      • MTTR Mean TIme of Repair
      • Availability = MTBF / (MTBF + MTTR)
    • 设计思想
      • 系统设计
        • Design for Failure
          • Failover 心跳检测
          • 超时控制 系统日志
          • 降级 保证核心服务的稳定而牺牲非核心服务的做法
          • 限流 对并发请求进行限速来保护系统
      • 系统运维
        • 灰度发布
        • 故障演练
  • 易于扩展
    - 设计思路
    - 拆分 :独立、单一职责
    - 存储层
    - 首要考虑维度业务
    - 数据特征水平拆分
    - 业务层
    - 业务纬度
    - 重要性纬度
    - 来源纬度

猜你喜欢

转载自www.cnblogs.com/yeni/p/11750640.html