04性能工程三定律:IT业和性能优化工作的“法律法规肉松蛋卷

我想你可能知道帕累托法则,它也被称为80/20法则、关键少数法则,或者八二法则。

这个法则是基于我们生活中的认识产生的,人们在生活中发现很多变量的分布是不均匀的——在很多场景下,大约20%的因素操控着80%的局面。也就是说,所有的变量中,比较重要的只有20%,是所谓的“关键少数”。剩下的多数,却没有那么重要。

举例来讲,在企业销售中,根据帕累托法则,大约“80%的销售额来自20%的客户”。认识到这一点对企业管理至关重要,比如需要重视大客户的关系。

我总结了一下,这个法则可以有以下几个领域的指导。

1.应用程序的使用

一个应用程序往往可以提供很多功能。但是,如果我们统计用户的使用情况,会经常发现大约80%的用户使用集中在20%的程序功能。

所以,对我们开发程序的指导意义是,要花足够心思在最常用的少数功能模块上,对它的设计和实现都要充分地优化。

3.程序代码的维护

如果观察代码的维护和改进历史,你经常会发现少数代码被不断地改动,甚至经常被改得面目全非,而多数代码几乎从第一次写完后就一成不变了。按照帕累托法则,80%的代码演进和改动发生在大约20%的代码上。

对程序维护而言,我们需要对这20%的代码尽量熟悉,这样才能对其他程序员的代码改动了如指掌,一目了然。

4.程序代码的修正和纠错

统计数字也表明,所有的代码错误中,差不多有80%的错误发生在大约20%的代码上。

所以,根据帕累托法则,代码修复和纠错时要重点修复最容易产生Bug的代码,这样才能把保证整个应用程序的合理质量。

所以,我们在应用程序设计和部署时,要充分考虑帕累托法则带来的影响,尤其是客户访问的峰值时段和空闲时段。

6.程序代码的优化

所以,如果我们想提高程序的性能,最好找出这些少数代码,并做重点优化,这样就可以用很少的改动大幅度地提升整个程序和系统的性能。

那么现在,我们就从性能优化的角度,来看看如何参照帕累托法则,来规划我们性能优化工作的投入和产出。

假设我们的性能优化投入永远是按照代码的优先级来投入的,也就是说,总是要先优化最值得优化的代码。那么我们看到,只要投入差不多20%的努力,就能产出80%的性能优化产出,获得最大的投入产出比。

下图是一个根据帕累托法则来投入努力和产出效果的过程。

假如先解决20%的最重要的问题,就可以达到总体效果的80%。以后再花费80%的努力,也只能解决剩下的20%的问题。

在应用帕累托法则的时候,需要注意的是,里面的80%或者20%都是大约数字,实际的场景千差万别,不可能是恰好这两个数字。这个法则的精髓是,我们的生活和自然界万物的分布不是均匀的,总有些因素比其他因素更重要。

接下来我们来看第二个定律。这个定律你可能会感觉有点陌生。

阿姆达尔定律(Amdahl’slaw/Amdahl’sargument)是计算机科学界非常重要的一个定律和法则。它本来用于衡量处理器进行并行处理时总体性能的提升度。但其实阿姆达尔定律可以用在很多方面,为了方便你理解,我们就从一个简单的生活例子开始。

我们用洗衣服和晾衣服来举例。这里假设我们不用洗衣机,而是用传统的方式,先洗再晾。再假设洗衣服和晾衣服各需要10分钟,那么整个过程进行完需要20分钟。

在这个基础上,我们继续对晾衣服模块进行优化,速度提升5倍,从10分钟缩短到2分钟。整个过程现在需要12分钟完成。

所以在这种情况下,改进程序本身的串行算法可能比用多核处理器并行更有效。

阿姆达尔定律对我们进行性能优化的指导意义有以下2点。

下面这张图描述了不同的并行百分比场景下分别进行并行优化的曲线。不同的曲线对应不同的并行模块百分比。横轴是并行程度,也就是多少个并行处理器。纵轴是速度提升度。

对每一条曲线我们都可以看到,超过一定的并行度后,就很难进行进一步的速度提升了。

另外说明一点,阿姆达尔定律其实是另外一个定律的简化版本。这个更复杂的定律叫通用扩展定律(USL,UniversalScalabilityLaw),你有兴趣的话可以去学习一下。

这个法则看起来有点不直观,但从整个系统的宏观角度仔细想想的话就容易理解了。

所以,如果这个状态稳定,也就是说,我们的系统处理速度恰恰好赶上客户到达速度的话,一方面系统没有空闲,另外一方面客户也不需要排队在系统外等待。那么在这个稳定状态下,我们的系统的总容量就恰好等于系统里面正在处理的客户数目。也就是说,N就等于X和W的乘积。

我举一个服务器性能提升的例子来解释吧。

根据利特尔法则,我们可以有两种方案来解决这一需求。

从这里可以引申出利特尔法则在性能优化工作中的两种用处:

可以说,这些法则就是IT业和性能优化工作的“法律法规”,有了它们,我们在实际工作中才能做到“有法可依,有法必依”。熟悉并熟练应用这几个法则,对我们的工作是会有很大的帮助的。

孟子说:“不以规矩,不能成方圆。”熟悉并熟练应用这几个“规律法则”,对我们的工作是会有很大的帮助的。

THE END
1.律师执业应遵守哪些法律法规律师执业应遵守的法律法规有以下几类:1.宪法:律师应当遵守宪法,保护公民的基本权利和自由,维护宪法的http://www.nkuo.cn/ask/462865.html
2.法则精髓法律知识的全方位解析在探索法律知识内容大全之前,我们需要首先理解什么是法律,以及它所蕴含的基本法则和原则。法律是国家为了维护社会秩序、保护公民权利和义务而制定的规章制度,它是国家权力机关根据宪法规定的权限,通过立法程序产生的一系列规范性文件。这些规范性文件包括宪法、刑法、民法等,是现代社会治理体系中不可或缺的一部分。 https://www.erdqcvtxm.cn/jun-lei-wen-xian/406326.html
3.“法律”“法规”“法则”有什么区别答案解析 查看更多优质解析 解答一 举报 1、法律必须是全国人大及其常委会制定,全国有效.2、法规分行政法规和地方性法规,前者是国务院制定全国有效;后者是地方人大制定,地方有效.3、法则不是法律术语,物理化学生物都有很多法则,弱肉强食也可以叫丛林法则. 解析看不懂?免费查看同类题视频解析查看解答 https://www.zybang.com/question/fa43fa4af634a2c250a0e56f4b0f0552.html
4.党章党规党内法规库党内法规具有强烈政治属性、鲜明价值导向、科学治理逻辑、统一规范功能,高度凝结党的理论创新和实践经验,是党的中央组织,中央纪律检查委员会以及党中央工作机关和省、自治区、直辖市党委制定的体现党的统一意志、规范党的领导和党的建设活动、依靠党的纪律保证实施的专门https://www.12371.cn/special/dnfg
5.报考初级安全工程师看什么书(安全生产法律法规)初级安全工程师考生还应该遵循二八法则,即在20%的时间里学习80%的重点内容,这样才能在考试中获得更高的分数。下面,安徽乐大教育网老师给大家介绍一下。 一、初级安全工程师备考所需书籍推荐 备考初级注册安全工程师考试时,阅读相关书籍是不可或缺的步骤。其中,《安全生产法律法规》和《安全生产专业实务》是基本的教http://m.ahleda.com/h-nd-40501.html
6.关于校园暴力法则有哪些如何预防校园暴力校园暴力是不可取的,如果上升到法律层面触犯了法律都要受到相应的制裁,从上述的校园暴力法则法规可以看出只不过如果年龄不够的话会处罚相对轻一些并不会免于处罚。发生校园暴力说明学生对法律的无知没有畏惧心里,学校和家长都应该加强对此的教育,如果等到触犯了法律再后悔就来不及了。https://www.64365.com/zs/774636.aspx
7.委内瑞拉法律法规和政策委内瑞拉没有关于BOT的相关法律法则,在工程承包法里也没有对BOT的相关说明及规定。 (四)企业税收规定 委内瑞拉实行属地税制和属人税制相结合的税收制度。委内瑞拉税法规定,所有在委内瑞拉居住或有住所的自然人或法人均应纳税,无论其收入来源于委内瑞拉国内还是国外。未在委内瑞拉居住或在委内瑞拉无住所的自然人或法人,只要https://www.chinca.org/laborcomplaints/info/864
8.法律的分类有哪些律师普法对于们打官司的人来说,对法律可以这样来划分: 宪法,它是国家的根本大法,是国一切法律、法规的母法。 其他法律、法规是宪法的子法。子法如与母法的内容相违背,子法则无效。除了母法--宪法之外,们可以把其余一切法律、法规分为以下四大部门。 即: (1)刑事; (2)民事; (3)经济; (4)行政。 打官司的人可以根据https://www.110ask.com/tuwen/12520075828264825192.html
9.法律知识大全宪法是一个国家的最高法律文件,规定一个国家或地区的社会制度、国家制度、国家机构等,是其他普通法律的立法基础和立法依据。因此,宪法被称为“母法”,其他普通法律称为“子法”,可以说子法是母法的具体化,如果子法如与母法内容相违背,子法则无效。我们可以把其余一切法律、法规分为以下四大方面: http://www.360doc.com/content/23/1113/09/1103756473_1103756473.shtml
10.教案法制(范文20篇)3、学会运用法律武器保护自己的合法权益 未成年人应该懂得,当自己的合法权益受到侵害时,自我保护最有效的措施是求助法律。依法维权不仅能保护自己的`合法权益不受侵害,而且是维护法律的尊严。 教案法制篇20 一、教学目标: 1、让学生们从小养成遵守道路交通安全法规法则的良好习惯,珍惜生命,开展“小手牵大手”的活动,从http://www.jiaoyubaba.com/jiaoan/79722.html
11.法律法规宣传视频法律法规宣传高清原创视频下载交通执法mg动画法律法规科普动画 宣传片-国家城市形象 二维动画-MG动画 雨月MG动画设计定制制作 播放:8.7w 人气:7945 时长:01:20 COSMO X 杨幂:我的生活定律法则 广告片-美妆/护肤 宣传片-人物/社会 孔维 共 4 位创作人 孔维导演 夢凡监制 JARE剪辑 ShunJ顺家现场制片 播放:13.8w 人气:1.4w 时长:02:19https://www.xinpianchang.com/search/832071
12.法规的意思拼音怎么读词典词语法规 繁体法規 拼音fǎ guī 怎么读 近义词法例 、法则 、规矩 【法规】的意思 法律、条例、法令、规章、规则等的统称。 来源:-- 词典修订版 【法规】的意思(词典减编版) 因某种特定范围、目的而制订的规则条文。【造句】:行政法规 来源:-- 辞典简编版https://www.zcdian.com/ci/0kyvur.html
13.法律法律是由享有立法权的立法机关行使国家立法权,依照法定程序制定、修改并颁布,并由国家强制力保证实施的基本法律和普通法律的总称。法律是统治阶级意志的体现和国家的统治工具,可分为宪法、法律、行政法规等,从属于宪法。截至2019年11月,中国现行有效的法律有275部。法https://baike.sogou.com/v57328.htm