me
me copied to clipboard
度量和指标
在看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%
网络关心的指标更多的是:
- 带宽
- 延时
- 抖动
- 丢包
研发效率
我们再来看看如何评估一个研发系统的效率:
规模指标
- 交付吞吐量: 期内交付需求的数量和点数
- 发布频率: 期内系统发布次数
响应速度指标
- 需求前置时间: 从需求提出到上线的时间
- 开发前置时间: 从开发到上线时间
质量指标
- 线上缺陷密度: 期内需求缺陷比例,也就是平均每个需求所产生的缺陷数量
- 线上缺陷分布: 所有缺陷中的严重致命登记缺陷所占的比例。
- 故障修复时长:从有效缺陷提出到修复完成并上线发布的时间。