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

度量和指标 #311

Open
nonocast opened this issue Jul 10, 2022 · 0 comments
Open

度量和指标 #311

nonocast opened this issue Jul 10, 2022 · 0 comments

Comments

@nonocast
Copy link
Owner

nonocast commented Jul 10, 2022

在看DevOps时不是很理解交付吞吐量,正好之前对于cpu load以及网络性能时都有些一知半解,趁这个机会几种学习一下这几个概念。

吞吐量 (Throughput)

吞吐量反应系统规模及能力。

港口货物吞吐量

港口吞吐量(Port handling capacity)一文中定义港口吞吐量是一段时期内经水运输出、输入港区并经过装卸作业的货物总量,计量单位为"吨"或“标准箱TEU”,一个TEU指标准20英尺集装箱。现在最大的集装箱船可以负载(load)24000TEU,厉害。

这里有2个点注意一下:

  • 港口吞吐量 = 有效进港(从船上卸下的货物)+有效出港(装上船的货物)
  • 有几种情况是不计算的: 比如同一船舶运载进港,未经装卸又运载出港;又比如同一船舶卸下货物随后又装到同一船舶出港也不算;装了船但没出港又卸货,这也不算;换言之,就是有效进港和出港才进行计算

根据Alphaliner公布了2021年全球集装箱港口吞吐量排名前30的年度排行榜。在排名前十的港口中,有九个亚洲港口,七个中国港口,分别是上海港、宁波舟山港、深圳港、广州南沙港、青岛港、天津港和香港港。上海港的吞吐量在4700万TEU。

根据4700万TEU这个指标你就很容易理解港口规模和性能。

英语词汇:

  • Container: 集装箱 (货柜)
  • TEU: Twenty-foot Equivalent Unit
  • Dock, Pier, Wharf: dock和pier都是指码头,dock是指船舶平行停靠海岸线的装卸区,而pier是指垂直的那种,多个dock或是pier组成一个wharf,比如Fishermen's Wharf翻译成渔人码头,他会有很多Piers, 比如旧金山渔人码头Pier39
  • Port, Harbor: port指广泛意义上的港口,如海港城市,上海港就是Shanghai Port;harbor指具体的水域,某一个港口,如天津新港就是Tianjin New Harbor;此外还有一个类似的词beth,指具体的泊位。简单的记就是一个port可以有很多harbor,一个harbor可以有很多beth。

补充信息:

  • 从上海到LA的TEU常规价格在1000刀,10-15天,因为covid19的影响价格据说翻了10倍,不过这也是临时的,随便理解一下,有个概念

旅客吞吐量

不管是机场、高铁、地铁或是旅游景点,旅客吞吐量(passenger throghput)都是指进、出范围的所有花钱买票的旅客数量,即进港(到达)和出港(出发)的总和。

物流评价指标

2021年顺丰财报显示:

  • 2021年,顺丰控股业务量创下新高,一共完成105.5亿票,同比增长30%。报告期内,顺丰控股的件量市占率为9.7%。截至2021年底,活跃月结客户达164万家,全年创收同比增长25%;个人会员数量规模达4.91亿,寄件量同比增长23%;线上月均活跃用户达1.35亿,同比增长35%。

除去费用部分,我理解评价系统性能主要是2个指标:

  • 票数
  • 时效

票数和吞吐量是一个概念,物流公司越大能提供的吞吐量越大。同时时效可以理解就是延迟,比如从上海到北京需要2天时间,这个2天就是标准延时,比如covid19 lockdown的情况下,延迟甚至到了夸张的30天,当系统出现运力不足或政策原因,系统表现的形式就是超时,再严重的情况就是将处理不了单直接退回,同时不接新单。

交通评价指标

我们平时说的堵车,更多的是指即时状态,更多的是和车的速度有关,

  • 比如按60km/h通过这条路常规需要5分钟,如果超过5分钟就算堵车
  • 换句话说,如果车在这段路上的平均行驶速度低于60km/h就是堵车,因为速度和通过时间成正比

CPU和网络

当我们把现实世界搬进数字世界的时候,我们会采用吞吐量评价网络和CPU的能力,而用负载评价当下的繁忙程度。

比如通过htop可以查看到load average: 2.51 2.76 2.69,我这台Mac mini是8 core所以当前负载只在20%左右。大多数人会有2个想法,1是为什么不用百分比,2是为什么要3个数字。

  • Windows/macOS的图形化下面都会有一个cpu使用率图表,x轴是时间,y轴是百分比,linux因为是文字界面,所以通过3个数字来代替图表说明负载随时间变化情况。所以你可以将3个数字转换为时间负载图表就好,本质是一样的。
  • 能省则省,你把1看成100%就好,同时2还可以表示200%,这在GUI下最大都只能显示到100%

网络关心的指标更多的是:

  • 带宽
  • 延时
  • 抖动
  • 丢包

研发效率

我们再来看看如何评估一个研发系统的效率:

规模指标

  • 交付吞吐量: 期内交付需求的数量和点数
  • 发布频率: 期内系统发布次数

响应速度指标

  • 需求前置时间: 从需求提出到上线的时间
  • 开发前置时间: 从开发到上线时间

质量指标

  • 线上缺陷密度: 期内需求缺陷比例,也就是平均每个需求所产生的缺陷数量
  • 线上缺陷分布: 所有缺陷中的严重致命登记缺陷所占的比例。
  • 故障修复时长:从有效缺陷提出到修复完成并上线发布的时间。

参考阅读

@nonocast nonocast changed the title 概念学习: 吞吐量 (Throughput) 度量和指标 Jul 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant