[萨尔瓦多酒吧--水区] 一行代码100W

apolloty 2007-07-06
给大家提供一段经典的案例 我刚刚才解决的

程序员的 粗心大意会酿成多么大的损失(单元测试的重要性)

情况是这样的:我们公司最近 频频发生 服务器无故死机,

原因 时间 发生的情况均是没有联系

只知道tomcat报错: JVM挂之类的错误

要知道 JVM死掉是多么不容易的事情

公司为了解决此事,分给我们一台v880sun的小型机(80+万元)

购买了10+万的 WAS web容器

结果 除了降低发生此类事件的几率以外

事情仍然在发生

结果今天我在重构我的代码的时候

看到有同事在我的代码下加了 一段代码(结对编程)

while (addrString.contains(",,"))
{
    addrString.replace(",,", ",");
}

这段代码是 解析一连串邮件地址(比如:<ty@ZX.com>,<ty2@aa.com>) 去掉中间的","的代码
但是有可能有",,"所以就加了这段代码

再看看这段代码
addsString是为解析前的 地址字符串
while (addrString.contains(",,"))
{
     addrString.replace(",,", ",");
}

大家觉得有问题么?


其实错误就在addrString.replace(",,", ",");
应该写成addrString=addrString.replace(",,", ",");

多么 "弱智"的错误

服务器虽然很强 8个CPU 线程池多 造成可以延缓死机的时间

但是接近一百万的money就只这样一行代码

今天感触甚多

大家引以为戒



向朋友们请教一下怎样发帖比较优美?
Spike 2007-07-06
while (addrString.contains(",,"))
{
addrString.replace(",,", ",");
}


多么华丽的循环


把代码放在
leon_a 2007-07-06
这个循环太华丽了~~~直接一个死循环,我最近写数据结构都不知道出现多少这种死循环了,大意不得啊
Spike 2007-07-06
这种初级问题,在测试的时候就能够发现

能出这种问题,说明你同事根本就没测试

希望公司上层别这是算你头上
apolloty 2007-07-06
Spike 写道
这种初级问题,在测试的时候就能够发现

能出这种问题,说明你同事根本就没测试

希望公司上层别这是算你头上


别人是解决大问题的,当然会忽视小问题罗!这种低级理由你都不知道?

他是架构师,我还记得那天很晚了,我和他都很疲倦了,改了也就没有提交CVS,所以我也不知道,测试人员也下班了,我们就仓促的更新到了服务器上。
apolloty 2007-07-06
所以 真正的理由是 项目计划问题
apolloty 2007-07-06
(Alt+s)提交真Cool!
apolloty 2007-07-06
但是还是要闪一下
Global site tag (gtag.js) - Google Analytics