首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可伸缩性的正式定义是什么?

可伸缩性的正式定义是什么?
EN

Stack Overflow用户
提问于 2014-09-10 22:53:34
回答 1查看 109关注 0票数 1

当我在不同的网站上读到可伸缩性的定义时。我从CPU和软件的角度了解到,这意味着随着CPU数量的增加,软件的性能也会提高。

然而,在“并行编程入门”一书中对可伸缩性的描述是不同的,它是这样的:

“假设我们用固定的进程/线程数和固定的输入大小运行一个并行程序,我们得到了一个效率E。假设我们现在增加了程序使用的进程/线程的数量。如果我们能在问题大小中找到相应的增长率,使程序始终具有效率E,那么这个程序是可伸缩的。我的问题是,可伸缩性的正确定义是什么?如果我正在对并行软件的可伸缩性进行测试,我应该考虑这两个定义中的哪一个?

EN

回答 1

Stack Overflow用户

发布于 2015-08-05 14:47:15

Scalability是指应用程序在被大量客户端使用时能够正确运行并保持可接受的用户体验的能力。

最好,这种能力应该通过代码中的优雅解决方案来实现,但在不可能的情况下,应用程序的设计必须允许使用硬件进行水平增长(添加更多计算机,而不是增加一台计算机的性能)。

可伸缩性随着业务的规模而增长的问题。Facebook (video)和Dropbox (video)就是很好的例子。此外,这里是哈佛会议上各种可伸缩性方法的great explanation

Scalability还指的是user interface在保持用户体验的同时适应的各种屏幕尺寸的能力。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25768640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档