02 | 分布式系统的指标:啥是分布式的三围
02 | 分布式系统的指标:啥是分布式的三围
讲述:聂鹏程
时长11:43大小10.73M
分布式系统的指标
性能(Performance)
资源占用(Resource Usage)
可用性(Availability)
可扩展性(Scalability)
不同场景下分布式系统的指标
总结与思考
赞 20
提建议
精选留言(36)
- 亦知码蚁2019-09-23软件测试是这么写的 可伸缩性和可拓展性 可伸缩性翻译自 Scalability,指的是通过简单地增加硬件配置而使服务处理能力呈线性增长的能力。最简单直观的例子,就是通过在应用服务器集群中增加更多的节点,来提高整个集群的处理能力。 而可扩展性翻译自 Extensibility,指的是网站的架构设计能够快速适应需求的变化,当需要增加新的功能实现时,对原有架构不需要做修改或者做很少的修改就能够快速满足新的业务需求。展开
作者回复: 从你的留言看出,你的知识面确实比较广。 在分布式领域将Scalability翻译成可扩展性的情况确实会更多一些,特别是在工业界。从可扩展性和可伸缩性在搜索引擎中,分别检索出来的结果数可以窥见一斑。 即便是严肃的学术界,我们也会看到可扩展性与可伸缩性互换表示Scalability的场景,比方说经典的两本分布式教材中,《分布式系统概念与设计》使用了可伸缩性的翻译(见原书1.5.4节),而《分布式系统原理与范型》使用了可扩展性的翻译(见原书1.2.4节)。 这种现象告诉我们不能教条的去照搬书上的东西,必须既要结合具体语境去理解问题,更要结合具体的问题去寻找最佳方案。 Robic,谢谢你的抛砖引玉!
共 16 条评论50 - 开心小毛2019-09-24离开响应时间的要求是无法衡量QPS的,例如一个每秒处理100个查寻且99%响应时间200秒的系统,同样可以每秒处理1000个查询且99%响应时间1秒。如果继续放松对响应时间的要求,每秒处理查询数峰值可能到达5000,但99%响应时间已经到了无法忍受的程度,所以QPS不能被定为5000。
作者回复: 首先非常感谢你的留言。肯定是像你说的这样,离开了约束去谈任何指标都是没有意义的。这也是我为什么在文章中谈到各种指标会相互制约、相互冲突的原因。所以,你的回复也是在一定程度上回复了我在文末留下的思考题。 在这里,我替所有的订阅者感谢你精彩的回复!!!
共 3 条评论25 - 开心小毛2019-09-24把QPS解释成每秒处理的查询数是有问题的,应该解释为可确保某给定响应时间下的每秒到达的查询数的上限。例如,某单核系统在99%分位200ms响应时间的要求下,系统最多能承受1000个查询,则QPS为1K, 而不是5。
作者回复: 再次感谢你的留言。正如刚才我讲到的:离开了约束去谈任何指标都是没有意义的。在解释BPS的时候,我也提到了查询和查询,事务和事务之间也是不尽相同的。不尽相同的地方也就包括你所说的响应时间。其实影响QPS的不仅仅只是响应时间,还包括其它的约束,如资源占用等。为了不过多影响阅读体验,我并没有把所有的约束放在定义中,而是选择把这个点作为一个课后习题。 在这里,我再次替所有的订阅者感谢你精彩的回复!!! 也欢迎你再次思考文末的问题。期待你更精彩的留言!
16 - Geek_f6f02b2019-10-04CAP原理就是讲一个系统无法同时满足一致性,高可用性与分布式。至多只能满足其中2项。单机就是CA一致性且高可用(时间上的高可用,没有同步数据耗时,相同时间可以处理更多问题),如今的分布式肯定是要有P,那么剩下的只能选CP跟AP了。像cdn服务就属于AP高可用且为分布式,像pxc数据库就属于CP一致性且分布式,不知道这样理解对不对?很明显你要满足一致性且分布式就不可能满足高可用,因为同步数据肯定要耗时。其它也一样,不是在于技术是否能实现,而是这个是内在矛盾,不可能通过技术解决,只能取舍。展开6
- leslie2019-09-24老师今天的东西里面是不是有疏漏啊?吞吐量里面其实就有一对有冲突的:QPS和TPS是很难做到没有没有冲突的;存储中间件/数据系统中大多数都有这种问题,RMDB是最典型的,即使是做了读写分离同样无法解决,故而才会从过去的模式升级出一主多从、双主、、、各种数据模型;甚至我们的硬件磁盘都是读性能远强于写性能。吞吐量内部就有一对互相约束的指标。 资源占用和可用性其实是有约束的:物联网中的这对其实在MQ上上就非常非常明显,不然就不至于需要特意去使用MQTT协议;9月24号《消息队列高手课》中刚好强调了这点。 其它就暂时不知:可能学习学习的还不够深入吧;毕竟学无止尽,觉得明白了一些懂了一些发现还有关联,就像之前的某些课程学习中发现学员感悟其实是另外一门同时在学的老师写的。期待老师答案的揭晓:谢谢老师的教诲。展开
作者回复: 没有问题的哦。我在介绍性能指标刚开始就强调了“不同的系统、服务要达成的目的不同,关注的性能自然也不尽相同”,QPS、TPS作为吞吐量指标当然是性能指标。你的留言质量非常高,从一定程度上也回复了我文末的思考题。 加油!继续保持这种学习+思考+分享的习惯!期待你更多留言!
6 - 张理查2019-12-20分布式技术原理与算法#Day2 分布式就是更多的机器处理更多的数据,更复杂的业务。就像算法要先知道时间复杂度与空间复杂度一样,分布式系统也有其评价体系,我们希望的是吃的少跑得快跑不死的马🐴。就是既想马儿跑,又想马儿不吃草,还想马儿死不了。也就是性能好,资源占用低,高可用的可扩展系统。 性能包括了吞吐量,响应时间和完成时间。读业务关注qps,写业务关注tps,传输关注bps。 资源关注cpu ram 磁盘 gpu ssd等等,用得越少越好,要看系统不跑的空载占用,也要看系统跑到极限的满载占用。 可用性就是系统的故障率,越小越可用,这里还有个可靠性的概念,可以理解为可靠性对标的硬件,但硬件的不可靠会带来系统的不可用,因此经常模糊。 可扩展性就不用说了,是分布式的初衷,但好的分布式系统是线性扩展的,即数量增加一倍,性能提升一倍,但这仅仅是理想情况。 当然不可能有上面提到的神马,一定是有取舍的,跑得快一般吃得多,吃得多容易死得早,而活得久又不能跑太快,要看关注点。展开
作者回复: 优秀,总结的非常好,这个马的比喻确实很形象!
5 - 周涛2019-09-26老师,你讲的很好,对于我这样在门槛边上的初学有很大的指引,我也发现分布式概念太多,内涵很广,如果光是听你的这样的课程,恐怕过不了十节课,就会陷入概念的漩涡,请教下老师,是否有实践性的指导,比如什么实验平台的介绍和操作,让我们能够动手做,这样对我们的认知有很大的帮助。有没有这样的实际操作的平台或者小型操作指导呢?共 5 条评论4
- 蚂蚁内推+v2019-09-24LOT 是什么系统能请教下吗
作者回复: 你说的应该是IoT吧?IoT是Internet of Things物联网的缩写
共 3 条评论3 - Scarf2019-10-04您好!请问,正文中的“各系统对于各个指标的要求”这张表格,是不是部分内容有误?正文里说了“吞吐量和完成时间通常是区块链系统设计者的首要目标”,但是表格里面对于区块链里,这两个指标的要求分别是低和中,怎么理解呢?共 3 条评论2
- .2022-03-01可用性那里5 个 9(或 9N,9 Nines)应该是5N,5Nines吧1
- Gopher2019-09-29老师的讲解很清晰,知识结构化良好,很赞,感谢! btw:如果把robustness翻译成“健壮性”就更好了。技术领域本就概念繁多,没必要再徒增烦恼,对新人也不友好。1
- zhaozp2019-09-29打卡文章学习: 1、分布式系统的衡量指标:性能、资源占用、可用性和可扩展性。 性能:吞吐量(QPS、TPS、BPS)、响应时间、完成时间。 资源占用:系统正常运行占用的硬件资源,比如CPU、内存、硬盘等。 可用性:系统停止时间与总时间的占比,或者某功能失败次数与总请求数据之比衡量。就是我们常说的4个9、5个9。 可扩展性:垂直扩展和水平扩展。 2、不同的分布式场景,所衡量的指标侧重点是不一样的,系统设计时需要有所取舍。展开
作者回复: 积跬步,而终至千里!加油!
1 - William Ning2022-03-12保持学习
- ky2021-10-16脑子中出现了一个伪公式:通吐量*响应时间=资源占用
- A君2021-03-12分布式系统的衡量指标,qps,tps,bps,响应时间,完成时间,资源占用率,可用率,加速比等
- abc2020-10-08在 24 小时内,如果网站故障导致不可用的时间是 4 个小时,那么系统的可用性就是 4/24=0.167。 感觉应该是20/24?
- 西门吹牛2020-08-12在这几个指标中,可用性是分布式系统首要考虑的,只要保证了可用,才能在可用的基础上进行其他 指标的提升。 响应时间和吞吐量:俩者是依赖的,响应短了,吞吐量就上去了,但是响应时间的缩短,是有难度的,要考虑响应的数据的实时性问题,如果对实时性要求不高,次要业务的响应可以给核心业务让路。如果所有数据都要求强一致性,那根据CAP原则,首先C是必须保证的,A和P是不能同时满足的。一般的分布式系统都是AP就可以了。 可扩展性:好的可扩展性是建立在好的分区容错性上的,一味的增加机器,容错性不好,还是不行的。 资源占用:合理分配内存,合理设计数据资源,优化业务逻辑和系统设计是关键。展开
- 鸭先知2020-03-29分布式的目的是用更多的机器,处理更多的数据和更复杂的任务。高性能、低资源占用、高可用性和高可扩展性是衡量一个分布式系统是否成功的重要指标,单这四个目标难以兼顾。
作者回复: 通常情况下是根据业务特征,综合考虑这四个指标
- 钱2020-02-12阅过留痕 挺好的把分布式的三围都给我们看了,下面就可以好好欣赏分布式女神的舞步啦! 根据自己压测的经验,我们最看重的指标主要是TP99+TPS+CPU+MER,马儿比喻很棒!
- linker2020-01-20qps与tps.可用性与可靠性他们互相制约