银行可以用服务器集群替代大型机吗?

真正的一线人员来解答一下:能。下面详细说一下,由于除夕在保障大家发红包,并且单位电脑没有外网,只能用手机回答了,格式上可能不太好看。

替代这个事最好还是分成“部分替代”和“完全替代”两种。这两种替代方式,从策略、风险、收益等等都是完全不一样的。两种方式我都大概谈一谈。部分替代像是并行替代,目标是分流,尽力减小主机的使用率,减少采购节约成本。完全替代像是串行替代,最终目标是完全替代,中间过程存在新老系统共存的情况。

如果是部分替代,那还是比较简单且风险较小。可以将部分交易在x86集群的架构重新开发,然后新老系统之间使用在线的数据同步工具同步。

这样操作的优点在于:1.新老并行,前期不稳定时可以用回老系统,风险小。2.可以逐步替代,一点一点做,时间充足,还是风险小。3.可以逐步摸索新平台的特点,还是风险小。

缺点在于:1.存在上限,做到一定程度就做不下去了,最后还是要大块大块的替代。2.数据同步问题。3.上下游系统配合改造。

如果是完全替代,时间和人力上都要有很大投入。而且一个新系统要有十年左右的使用周期,那系统架构、业务架构等等也会一起优化,还涉及到业务部门,是一个全行性的工作。

优点在于:1.完全摆脱主机,成本下降巨大。2.业务和科技整体升级,不是补丁式的更新。3.领导升职、对外宣传。

缺点在于:1.动作大、风险大,发生事件影响客户体验,考验技术能力,考验公关能力。2.全行总动员,工程浩大,需紧密配合。3.业务需求挖掘,有没有自然而然的需求,还是为了改而改,没有业务升级需求但是不得不搭车升级。

下面说部分(并行)替代要解决的问题。

1.到底能分流多少,到底能省多少钱。相当多的交易是可以直接拆出来的,比如查询类的,比如逻辑上比较独立的部分或功能等等。但是因为数据同步存在延时,时间敏感型的交易是不能拆的。比如开卡后立刻查询并回显成功,就需要用原交易或加延时。实际上虽然查询交易占大多数(因为修改类交易往往前后也会串上查询交易),但考虑到时间敏感型、使用频率和开发成本,只会做常用的一些。而且查询交易往往逻辑简单,能节约的Mips(就是性能或者算力,IBM大机按每Mips多少钱算)并没有想象中高。

2.数据问题。如果新系统只涉及查询交易,那数据只有单向同步。如果新系统涉及修改,还可能涉及双向同步,会更复杂些。还有就是数据同步受io影响比较大,一些时段io使用较大时数据同步会受影响。当然也可以新系统直连老系统数据库,不过这里会有一些性能问题需要解决。

3.上下游系统改造。因为涉及时间敏感性梳理,以及交易路径的改变,上下游系统也有一定的工作量,并且增加一定的系统复杂度。说白了就是麻烦且花钱。

部分替代的方式可以一点一点的投产,能够在短时间内看到效果。所以几大行在前几年大多都做了这方面工作,多多少少分流了交易出去,节约了或多或少的成本。当然与此同时IBM的收入减少。

下面说完全(串行)替代要解决的问题。

1.个人觉得最重要的,到底有没有业务升级需求。最完美的情况自然是业务要升级、技术上有突破、政策和国际环境上有要求,大家一拍即合自然而然。最怕因为政策和环境变化,甚至单纯某个领导要升级或退休急需成果,就强行推动这个大工程。不过现实往往是复杂的,做不到最好也做不到最坏。

2.技术和平台的选择。分布式可以使用的技术和平台不止一家,一个系统要用10年以上,自然要好好选择。现实中存在各种各样的阻碍,全看各位领导以及食物链上游的部门们pk。

3.工作量问题,这个和我们息息相关。工作量翻倍不止,用的又是新东西,混沌期内谁也不了解情况,混乱是难以避免的。这种情况下,只能说996都是恩赐,007不至于,但是6-11-7也有可能。大领导再一催,倒霉的都是干活的。这个阶段会留下多少坑?能不能处理好工作量问题很重要。

4.风险问题。新系统的质量如何?在3的情况下,赶工、凑合,出来的东西好不好用?有没有新工艺新流程来降低风险?程序员们经常说,如果程序以一种奇怪的姿势运行了起来,就不要去动它。那一下子全都动了,全都换新的,风险肯定超大。

5.替代肯定也是逐步进行的,新旧系统自然也存在并行期。新旧系统的相互调用,数据传输等等也是需要思考的。

最后,其实替代这个事肯定是能做的,现在的技术已经完全满足银行的需要了。但为什么没做,或者说没做完呢?因为银行稳定大于天的特点,替代这个事是大家都不想做的。领导不愿意担责任,干活的不想出舒适区,没有替代的动力,所以这几年才开始这个工作。现在各家行都还在努力,相信再过几年就能看到很多成果了。

最后还是要说一句,IBM真的太黑了。太黑太黑太黑了……但也是真好用。哎…

来源:知乎 www.zhihu.com

作者:LeoNaN

【知乎日报】千万用户的选择,做朋友圈里的新鲜事分享大牛。
点击下载

此问题还有 72 个回答,查看全部。
延伸阅读:
服务器集群和一台服务器有什么区别?

为何云计算服务器,或google等大公司的后台服务器,不选用大型机而用几十万的小型机呢?