我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:老奇人论坛一平特肖 > 单点 >

只要存在“短板”

归档日期:08-13       文本归类:单点      文章编辑:爱尚语录

  上面的理论计算看着貌似也没啥问题,感觉还挺靠谱。但如果换个角度想想,总觉得哪里不太对劲:MTBF约30年,难道说可以期望它服役30年?先看看希捷的工程师如何解释:

  这里所说的“可重启”和很多人心目中的理解可能不太一样,我司相当多的开发人员热衷于共享内存的使用:

  前文的描述其实都是针对单一模块而言,而现实世界中的系统往往是由若干模块组合而成。其实,各个模块之间的关系无非“串联”和“并联”两种(与串并联电路类似),那么整体可用性计算方式就显而易见了。

  看到这里,再联系前文对于Failure Rate的阐述,我知道各位读者有没有摸清其中的门道。其实说白了很简单,这些厂商真正测算的是产品在“青壮年”健康时期的Failure Rate,然后基于与MTBF的倒数关系,得出了动辄百万小时的MTBF。而现实世界中,这些产品的Failure Rate在“中晚年”时期会快速上升,因此,这些MTBF根本无法反映产品的真实寿命。文中也提到,希捷也意识到MTBF存在弊端,因此改用AFR(Annualized Failure Rate),俗称“年度不良率”。

  相信点开这篇文章的读者,一定或多或少接触过“高可靠”“高可用”这些字眼,但是往往或语焉不详,或罗列术语(MTBF、MTTR ...),那么我们到底应该如何定量描述系统的可靠性和可用性指标呢,这些看着很上流的术语到底意味着什么呢?也许,看完这篇文章,您从此也可以和小伙伴们愉快地拽术语了!

  工业界通常使用“浴盆曲线”来描述硬件故障,具体如下图所示。具体来说,硬件的生命周期一般被划分为三个时期():

  软件应用的日益广泛,使人们对软件质量和性能的要求越来越高,可靠是衡量软件的一个重要特性,其定量的评估和预测受到了普遍关注,因此研究软件的可靠性评估技术具有现实意义。

  Google采集了公司超过10w块消费级HDD硬盘数据(SATA和PATA,5400转和7200转,7家不同厂商,9种不同型号,容量从80G到400G不等),最终得出如下数据:

  首先将节点从服务列表中摘除,等待节点流量跌零,发起重启过程(更新文件等),确认服务启动正常后,重新将节点添加至服务列表,逐步引流进行正确性验证(若发现异常,及时摘除)。服务节点依次分批处理,真正实现无缝重启

  为便于理解,举个例子:比如正在运行中的100只硬盘,1年之内出了2次故障,则故障率为0.02次/年。

  通过上一小节的示例系统可用性计算,相信各位对于“并联”的威力已经有了非常直观的感受。其实这就是我们做架构设计常说的“容灾”“冗余”,其实在硬件领域也很常见(如双电源、RAID、双网卡)。与此同时,对于“串联”的局限也应该有所体会,只要存在“短板”,整体可用性是上不去的。引申到后台软件系统设计,我个人有以下看法,欢迎大家拍砖:

  单机软件的可靠性受限于硬件,因此,言必谈“7*24不停机”本身就是个无稽之谈。随之而来的就是一些根深蒂固的错误观念,比如内存碎片。新人一进公司往往就会被教导:后台开发应该尽量避免使用malloc/free等动态内存分配,因为容易导致内存碎片,随之而来的就是避免使用STL容器等。如果您有幸已经用上了64位系统,那么如果您还能遇到内存碎片,我只能说自求多福了;如果您还在使用32位系统,也不用太担心,今天的glibc也早就不是当年的glibc了,人家也在不断优化内存分配算法,何况kernel都在使用动态内存分配。退一万步讲,即使真的遇到了,那么就到了我想谈的下一个线)????????“可重启”才是好设计

  对于初学者来说,CPU是什么、什么是双核、4核、6核、8核等。下面,就以上的问题,我们做出一一解答。?故障网帮你解答:CPU是什么、做什么用、一般CPU是接在

本文链接:http://canfilmi.com/dandian/1055.html