随笔一

做这行有点年头了,有些时候看问题的观点不同,会产生很多不同的看法。

最近有个问题,已经出现了2次了,就是dll的版本不同引起的。

个人认为最好的解决方案就是开发一个自动检测功能,系统中的所有模块都可以和主服务器通信,获取最新版本。应该说这是理论上最完美的解决方案,从此部署在不同服务器上的系统版本都应该一致,但随之而来的问题也很多。

最大的问题是没有钱去开发,有了钱也没有足够的精力,光是日常的support已经足够让人抓狂了。

退一步说即使有钱有时间,系统的复杂性也是超乎寻常的,要考虑到各个IDC的firewall,以及每个地区的rule,还有网速和recover功能等等,需要考虑的地方很多。

所以构建这样的模块,是非常复杂的。但是功能却只是为了同步dll的版本,似乎有点小题大作。

因此这也是停留在纸上的解决方案,除非公司很大很有钱,闲人很多。。。。。。

那么自己开发代价太大,外包如何?答案是No,这显然更不可能了,因为这个原生的系统是非常复杂的,外包的话光培训就够讲一阵子了,别人能不能理解又是一回事了,再说真正调试的时候还要开放很多firewall,这是相当繁琐的。

ok,既然开发这条路肯定走不通,那怎么办呢?

人力手工维护?听起来是个不错的想法。

比如我们可以和客户说,给我1天甚至几天的时间,我们帮你们检查一下版本号,有不同的话帮你同步一下。

客户说,好啊,于是我们就开始了。。。。。。

看来一切顺利啊,事实果真过此吗?

假使客户的系统正在线上使用,你发现有一个dll的版本号比较旧,你想更新,那么势必要停止服务,按理说是不行的,那么你就不得不等到凌晨进行更新。

如果一切顺利还好,万一更新完毕后,有奇怪的问题出现,那你怎么办?恢复之前的版本吧,然后回去再找原因,这就意味着一天的等待都白等了,从头再来吧。

如果客户很好说话,说不要等到晚上,现在就更新吧。ok!你感激涕淋,立马开干。更新完毕后发现没有问题,你很高兴,可是隔了一天,客户说原先有一个功能无法使用,然后你再去查,发现恢复成原先的版本就好了,这时你一定是在吐血了。

总之里外不是人啊!可能你们会说为什么不在更新前事先测试呢?问题是我们不熟悉客户的业务,因为这套系统是很活络的,你可以这样用,也可以那样用,作为开发人员是不可能了解全部业务的,所以你即使把客户的系统全部备份下来,你也无法面面俱到。

那怎么办?

很简单,什么也不干!有了问题再解决,这样可以体现我们的价值,让客户感觉他们的support费用不是白出的,只能这样了。

很久之前,在我小时候曾看到一个故事,大意如下。

某乡进行干部考核,A村和B村的村长都有机会升乡长,考核期为一年。

两人回去后,针对当前大旱的现状做了针对性部署,但是A村长未雨绸缪,还对大涝进行了预防。

结果旱情过后果然出现了洪水,A村因为预防工作做得足够好,自然安然无恙。

B村当然是损失惨重,因此B村长压力很大,不得不连夜抢险,连自己家被洪水冲了都没顾上,结果乡里来的记者很感动啊,在报上连篇累牍地报道B村长。

所以一年的考核期过后,B村长是乡长了,A村长还是村长。

这是个我小时候无法理解的故事,现在懂了,其实工作也一样,不是想得越多越全,做得越多越好是最好的,有时候有些缺陷反而不是坏事。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值