Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

分布式系统(二)- 衡量分布式系统的指标 #4

Open
GarinZ opened this issue Feb 3, 2021 · 0 comments
Open

分布式系统(二)- 衡量分布式系统的指标 #4

GarinZ opened this issue Feb 3, 2021 · 0 comments
Labels
Distributed Systems Monitoring Service Performance Monitoring

Comments

@GarinZ
Copy link
Owner

GarinZ commented Feb 3, 2021

Overview

- 性能
  - 吞吐量
    - TPS
    - QPS
    - BPS
  - 响应时间
  - 完成时间
- 资源占用
  - 空资源占用
  - 满资源占用
- 可用性
  - 系统可用概率
  - 功能可用概率
- 扩展性
  - 加速比

性能(Performance)

吞吐量(Throughout):系统一定时间内可以处理的任务数

  • QPS(Query Per Second):用于衡量读操作的性能
  • TPS(Transaction Per Second):用于衡量写操作的性能
  • BPS(Bit Per Second):衡量系统每秒处理的数据量,适合数据库系统

响应时间(Response Time)

系统响应请求的的时间,对时延敏感的业务很重要

完成时间(Turnaround Time)

完成请求或处理需要花费的时间,衡量采用任务并行后是否真正提高了性能的指标。计算海量数据或处理大规模任务,用户对完成时间敏感

资源占用(Resource Usage)

系统正常需要占用的硬件资源(CPU、内存、硬盘)

指标

  • 空资源占用:系统在无负载时候的资源占用,衡量系统自身占用的资源,嵌入式系统对此要求很敏感
  • 满资源占用:系统在满负载时的资源占用,体现系统的处理能力。同样的硬件配置,业务运行的越多,资源占用越少说明系统设计的越好。

可用性(Availability)

指系统在面对异常时,可以正确提供服务的能力。是分布式系统的重要衡量指标,体现了系统的容错能力。
可用性指标的含义是:是系统可能出错的前提下,能够正常提供服务的概率。

指标

  • 可用性 = 系统可用时间 / 系统运行时间总时间
  • 可用性 = 功能请求成功次数 / 功能请求总次数

可用性 vs 可靠性

  • 可靠性用来表示系统完全不出故障的概率,更多用在硬件领域
  • 可靠性和可用性经常可以互换使用

可扩展性(Scalability)

指系统可以通过扩展集群机器提高系统"性能(Performance)",存储容量、计算能力的特性。

扩展方向

  • 垂直(纵向)扩展:提升硬件性能
  • 水平(横向)扩展:增加计算及数量

好的分布式系统追求“线性扩展性”,就是系统的某个指标可以随着集群中机器数量呈线性增长

指标

加速比(Speedup): 扩展后某指标的值 / 扩展前某指标的值

@GarinZ GarinZ added Distributed Systems Monitoring Service Performance Monitoring labels Feb 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Distributed Systems Monitoring Service Performance Monitoring
Projects
None yet
Development

No branches or pull requests

1 participant