2012.3.15 微博热报:Azure闰年Bug、Google如何测试和Grizzly

闰年bug导致微软Azure故障

\\
\

2月29,微软的云计算平台出现故障,现在原因出来了 http://t.cn/zOVFOtS 很简单,无证程序员在计算日期的时候偷懒了 :需求是要算出第二年的今日,码农实现的时候直接取了当前日期,然后把年份加一,结果2013年2月29号悲剧了。

\
\

新浪网研发中心总经理符庆明指出:

\
\

这个故障报告写的很全面,可以学习他们对故障的分析和处理改进思路,值得一读

\
\

Wang_Hong_也说:

\
\

出问题后的Root cause analysis 做的不错,针对Prevention, Detection, Response, Recovery 四个方面做出了改进计划。

\
\

发生问题的不只是微软,杜安放-SHA提到:

\
\

我们的系统也出现了这个问题,js里面简单的给年份加上1,导致js出错,导致整个业务流程中断。

\
\

揭巴说:

\
\

很多bug都是这样产生的,测试不够充分吧。但这个bug完全可以避免,把年份+1这种操作很多高级语言的Datetime类中都应该有DateAdd之类的函数,而不是把日期的年份拆出来单独加1再拼回去

\
\

iSwanliu指出:

\
\

顺便贴个软件随想录里关于微软和闰年的典故。1991年Joel同学在微软当vba的程序经理,比尔盖茨来开review会,问你们有人真地看 过有关实施的所有细节吗?比如,所有这些日期和时间函数。Joel答,是的,比如1900年的2月要特别处理,1900不是闰年。。。http://t.cn/zOIHpqR

\
\

淘宝日照的点评很到位:

\
\

单点相关的逻辑需要全盘代码review,严格控制代码质量,这些地方不适合多人协作。另外一点就是手自一体,不仅仅需要自动化,也应该考虑关闭自动化提供手动模式

\
\

闯车了的总结是:

\
\

事实证明,一个小小闰年bug,就能让你标榜高可用的云计算平台,像多米诺骨牌一样迅速坍塌。一个仓促的决定就能让一切瞬间成为泡影。

\
\

Google如何做测试?

\

伯乐在线官方微博发布的一条微博说:

\
\

《Google是如何做测试的》James Whittaker是Google工程师。在他所有被问及的问题中,最多的就是问Google是如何做测试的。尽管在博客中(google testing blog)中有过零碎的解释说明,但 James 特意写了一篇文章,以解答这个问题。(其实Google也没有真正的测试部门,全文……http://t.cn/zOI7W65

\
\

接下来,伯乐在线官方微博在评论中又推荐了另一篇文章:

\
\

前两周有篇介绍文章:《Facebook是如何做自动化测试的?》(http://t.cn/zOGIwtX

\
\

HuZhenbo总结:

\
\

Google 的做法:1 测试没有独立的部门,他们是产品团队的一部分;2 软件质量更多是开发人员而不是测试的责任,整个团队都有责任保障软件的质量 3 软件测试工程师主要的工作是自动化测试框架的搭建和代码编写 4 除了软件测试工程师,还有软件测试开发工程师,他们的工作就是保证软件的可测试性!

\
\

walking熊说:

\
\

James Whittaker貌似最近回微软了。完全靠Dev去保证代码和产品质量是不合理的, 人总是有避免发现自己的错误的倾向。保证可测性其实需要PM、Dev、Test共通协作,剩下的Test工作主要安排在tester角色, google的开发测试和测试有合并的可行性。所以个人认为, PM、SDE、SDET还是比较高效的工程组合。

\
\

虞卿一言指出:

\
\

开发同学本身需要拥有良好的测试思想和实施测试的各种能力

\
\

老喵猪回复@虞卿一言的话看起来有些悲催:

\
\

有了能如何,现实中有多少家公司,多少项目组在做?由于工期紧张,有多少开发是从实现市场价值的角度去写代码的呢?

\
\

welkinwalker给出参考:

\
\

how google tests software 是一个系列,都在http://t.cn/GV8fL。现在都写到 part seven 了,这个是part one的翻译版

\
\

Memcached客户端grizzly评测

\

SinaAppEngineSina App Engine的官方微博,昨天发表微博,推荐grizzly:

\
\

《Introduction to GrizzlyMemcached》由于memcached是集中式的缓存,所以他的客户端就很重要了。这篇文章介绍了使用grizzly(一个用java 语言实现的NIO框架)作为memcache客户端,以及这种客户端的I/O模型,跟其他客户端的连接模式对比,并做了一些性能对比测试。http://t.cn/zOIGfat

\
\

PiouseLeo指出:

\
\

看了一下benchmark的结果,没有看错的话,GrizzlyMemcached除了在multi-set上有优化,性能脱颖而出之外,其他操作的性能都与JavaMemcached不相上下。不知道GrizzlyMemcached的稳定性,以及作为一款开源组件的生命力如何。

\
\

今日微博推荐

\

时蝇喜箭

\

推荐理由:关注并经常推荐很多国外的编程资源,可以通过“【关注】”关键字搜索他的微博。

\

欢迎读者关注@InfoQ,推荐热门话题,可私信@InfoQ,同时请您说明推荐理由。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值