应用云平台的可用性——从新浪SAE看云平台设计
云计算平台的可用性,相比传统互联网服务而言,更加复杂和困难,也更具有挑战性。本文借助新浪SAE云平台为读者讲述了云平台可用性的定义、如何打造高可用的平台,以及对云计算的用户提出了建议。
该内容已经被标记书签!
标记书签错误,请重试!
作者 Deborah Hartmann Preuss 译者 张晓庆 发布于 2009年8月27日
在北约组织举办“软件工程大会”40周年之际──正是在这里首次提出了软件工程规范,Tom DeMarco开始反思规范的发展,包括他对软件度量的先期发展方向的影响。“不能度量,就无法控制”,DeMarco的这句名言被引用甚多,然而现在他怀疑这是否把我们引离了计算机的本质:“更重要的目标是进行转变,编写可以改变世界或者可以改变企业及企业运作模式的软件。”他的这一结论,最先出现在《IEEE软件》七八月刊的“软件工程概念已是明日黄花?”[pdf]一文中。
这篇文章中,DeMarco是这样定义“软件工程”的:
软件工程包含一组特定的规范:定义好的流程、评审及走查、需求工程、跟踪矩阵、度量、精确质量控制、严格的计划和跟踪、编码和文档标准。所有这些都为了努力做到预期和实际结果的一致。
--Tom DeMarco
对敏捷实践者来说,DeMarco可能因为与Tim Lister在1987合著的《人件》一书更广为人知。但是又有多少人会注意到他在1982年编写的颇具影响力的《控制软件开发项目:管理,测算和评价》这本书呢?DeMarco在文章中首先就回顾了这本书:
经过反思,我开始怀疑:
我的答案是不,不,不!
- 这些建议在当时正确吗?
- 现在仍然有用吗?
- 对任何成功的软件开发项目,我是否仍然认为度量必不可少?
--Tom DeMarco
通过对这本书的反思,他发现了更多的真相,同时也指出软件工程规范与物理学这样的自然科学不同:“软件开发...度量...须持怀疑态度。”他继而把这本书与交付价值关联起来,并且建议说:
“...你越关注于控制,项目交付的价值就可能越低。对我来说,有个问题比怎样控制软件项目更重要,到底为什么我们在做那么多无甚价值的项目?”
--Tom DeMarco [emphasis added]
在得出结论之前,他简要描述了一个更为适用的增量管理的方法,其要旨与敏捷团队和它们的客户非常类似。
项目不需要控制,或者只需要很少的控制,我真的能说这样没问题吗?几乎可以这样说。首先我们需要选择一些精确控制对它们没有很大影响的项目。然后不管我们花多大力气来控制,都要降低我们对能够控制多少的期望。
--Tom DeMarco
参见原文:DeMarco Reflects on 40 Years of Software Engineering Evolution
译者 张晓庆 有多年的软件开发经验,主要是J2EE项目、Web应用和分布式系统等等,在电信网管开发方面经验丰富。
云计算平台的可用性,相比传统互联网服务而言,更加复杂和困难,也更具有挑战性。本文借助新浪SAE云平台为读者讲述了云平台可用性的定义、如何打造高可用的平台,以及对云计算的用户提出了建议。
淘宝高度重视Java平台的健康发展,组建了一个团队专注于Java平台的底层部分的性能、功能与稳定性改进;工作主要基于OpenJDK中的HotSpot VM开展,其中一些通用的功能随后也会逐渐反馈给OpenJDK社区。希望能与使用Java平台开发应用的大家交流经验。
本次演讲视频录制于QCon杭州2011。
2011年4月21日至22日是值得云计算从业者纪念的日子。Amazon的IaaS服务出现故障,导致许多商业网站的服务中断,影响非常严重。作为云计算用户,我们需要思考的是,如何保证即便在云服务不可用的情况,我们的应用架构仍然能够屹立不倒?本文正是站在云计算用户的角度试图探讨这一问题。
12人的技术团队,4组刀片服务器,每月20亿的访问量,每日1次准时部署,99.9%的可用性。这可能吗?当然。想知道如何做的吗?百姓网将与您分享他们在DevOps实践过程中的经验和技巧。
本次演讲视频录制于QCon杭州2011。
篱笆作为一家起源于社区的电子商务公司,反映到技术层面就是同时要面对产品和业务,以及经营战略的变化调整。如何在产品和业务的夹缝之间完成技术架构的抽象与平衡,寻找更有效的价值定位,这当中有些经验教训和个人感悟愿与众人分享。
本次演讲视频录制于QCon杭州2011。
本文将对特性注入以及相关方法做一个扫盲性的介绍。我们会解释这个框架的关键要素,并附上实例来证实它们。为了让文章保持相对较短,我们不会深入到某个工具或方法中,而是会给出一些参考资料,以便大家做进一步的研究。
随着JDK 7的发布,字节码指令集终于迎来了第一位新成员——invokedynamic指令。这条新增加的指令是JDK 7实现“动态类型语言(Dynamically Typed Language)”支持而进行的改进之一,也是为JDK 8可以顺利实现Lambda表达式做技术准备。在这篇文章中,我们将去了解JDK 7这项新特性的出现前因后果和它的意义。
随着互联网应用的发展,Java分布式远程服务技术受到越来越多的关注,本文将对各种相关实现以示例的形式逐一介绍,并总结其中的优缺点,使读者能够在技术选型时有所准备。这是文章的下篇。
1 条回复
关注此讨论 回复