招银网络科技吧 关注:1,945贴子:11,806
  • 8回复贴,共1

招商银行新一代分布式核心系统建设

只看楼主收藏回复

招商银行在发展过程中一直秉持科技兴行的发展战略,立足于市场和客户需求,致力于建设全行统一的信息系统。
建行近三十年来,招商银行IT系统经历了会计电算化、业务电子化和全行主机大集中等三个阶段,已基本建成覆盖客户、渠道、产品、账务、管理等领域的较为完整的银行信息系统,在支撑业务发展和管理变革中发挥着重要的支撑作用。
一、项目背景
随着业务快速发展和二次转型工作的推进,招商银行需要对现有的IT系统架构、业务体系进行重构和优化,打造运行高效、长期可用、满足专业化经营要求的新一代系统,技术面对的挑战主要表现在以下几个方面。
1.移动互联时代的业务快速增长
从PC互联时代进入了移动互联时代,移动终端用户和交易量大幅增加;移动应用的客户接触是随时随地的,越来越多的第三方系统接入到银行,这些趋势都造成银行业务逐年翻番,传统单主机集中式架构无法继续支持上亿客户、日均数亿请求的业务量。
2.利率市场化的业务产品创新加速
随着利率改革逐渐深入,利率市场化呼之欲出。为了在存款利率市场化到来的第一时间响应需求,银行系统要足够灵活,要实现配置化的产品工厂。
3.业务连续性要求日趋苛刻
招商银行作为大型零售银行,对重要业务系统运行连续性要求异常苛刻,如停机超过半小时造成的业务损失、声誉损失估值可达数亿元人民币,“双11”等交易高峰期对银行核心系统的处理能力也不断提出新的挑战。


IP属地:福建来自Android客户端1楼2016-12-27 20:32回复
    二、项目研发概况
    招商银行新一代分布式核心系统于2010年启动规划,从规划到投产历时3年。
    项目作为一个超大型项目集群,分为核心解耦、银行卡、CIF等项目群,项目群下分为多个大项目片区,每个片区立项数十个。项目群管理分为技术组和业务组,各自成立PMO(项目管理办公室),负责各自方向把控、资源协调、工作推动等。同时为了加强两个工作组横向沟通,成立以相关技术、业务部门领导为成员的执行管理组。
    整个项目新建和改造数据表数万张,新增、改造程序多达数万个,新增和改造代码数百万行。
    项目投产过程历时半年,按先小型分行投产、后中小型分行投产、最后大型分行投产的顺序逐步推进,数据迁移量均衡分布,稳步投产。


    IP属地:福建来自Android客户端2楼2016-12-27 20:32
    回复
      三、实施成果
      1.技术层面
      (1)解耦核心系统。打造层次清晰、运行高效、长期可用的核心框架,对未来业务系统落地实施奠定了基础;重构业务体系,建设满足专业化经营要求的业务系统集群,提高产品定价能力和盈利水平,降低运营成本,控制操作风险。
      (2)统一客户信息。建立统一的客户视图和配套的管理系统,实现客户基本信息的集中和统一管理,并在统一的客户标识项下,关联客户在各系统中的产品开通、产品使用、客户行为等信息,形成360度客户视图,同时通过完整的客户信息管理、治理体系,明确客户信息的收集、维护和使用的策略、制度,满足客户经营和管理中各环节对客户信息的需要。
      (3)打破渠道竖井。加强渠道整合,从架构上改变目前渠道的竖井状结构,建立多渠道协同体系,统一客户接触、统一客户任务、统一客户认证,使客户获得连续、一致的服务,让客户真正体验ONEBANK服务,不断提高价值客户的忠诚度和满意度。
      (4)提升性能指标。从根本上解决主机性能压力。目前日均交易量大幅高出设计标准,各项非功能指标仍然优异。


      IP属地:福建来自Android客户端3楼2016-12-27 20:33
      回复
        四、创新特点
        1.基于AS400集群的分布式核心
        业内对分布式系统的探讨大多基于开放式架构,而招商银行选择的基于AS400主机集群的分布式系统为业内独创。
        招商银行一方面倚重AS400的高可用性和易维护性,发挥自身在AS400管理、开发、运维方面的知识积累优势;另一方面通过以AS400主机系统为基础的集群获得了足够的可扩展性,并保障了分布式架构下的数据一致性。
        AS400主机与普通×86服务器相比,单机性能强大,分布式集群的规模较小,集群的可维护性高。以本项目为例,×86集群可能需要上百台服务器,而AS400的集群仅需要几台主机。
        由单主机向分布式架构的转变势必会带来数据库的拆分。招商银行采取垂直分片方式将业务分为借记卡和其他业务,在保障简单但巨量的借记卡业务的同时,将借记卡业务按分行来分表,从而实现了业务集群化基础上的可扩展性。


        IP属地:福建来自Android客户端5楼2016-12-27 20:33
        回复
          2.AS400集群内的事务保护
          对于银行核心系统而言,业务数据事务一致性的重要性不言而喻。在银行核心系统的场景下,互联网公司经常采用的最终一致性方案是行不通的。
          招商银行自行设计的双机间的交易穿透和双机事务保护机制,在集群的不同主机间采用强事务一致性,在账务层实现了交易穿透。应用开发人员可以完全不用知晓账户所在的位置,由核心底层自动完成集群中主机间的账务穿透,账务交易成功则双方同时确认,任意一侧不成功则双方同时回滚。
          由于实现了交易的自动穿透,招商银行在AS400上几十年积累的80%的应用得以不修改或者小修改就能适应新的架构,有效保护了信息资产。


          IP属地:福建来自Android客户端6楼2016-12-27 20:34
          回复
            3.分钟级别的主备切换
            新一代分布式核心集群的高可用方案采用深沪两地“生产主机-本地热备-远程温备”的方案。主备切换方案按分钟级别设计,在极端情况下提供秒级切换。
            首先,主机要快速切换到备机,快速切换的前提是主备数据已经同步到同一点。实现快速同步技术的前提是将联机和批量的同步通道分离。分布式架构已经将同步数据进行了一次切分,再通过批量和联机的通道分离,使联机需要同步的数据量进一步减少,延迟保持在秒级。
            其次,批量交易由于会带来数据库的大量读写,往往延迟较长。通过应用设计中的可重入等机制,在批量同步时间预计过长的情况下同步数据可以直接丢弃,在备机上重新跑批,以减少灾难场景下切换所需的延时。
            最后,在系统中保存了一个几分钟的交易缓冲池,以在数据未同步的情况下,进行事后交易核对。在极端环境下直接切换时,可凭借这几分钟数据的事后核对保障业务的完整性和正确性。


            IP属地:福建来自Android客户端7楼2016-12-27 20:34
            回复
              4.虚拟子账户
              热点账户是目前互联网高频交易环境下带来系统冲击的主要原因之一,“双11”支付宝的相关交易账户在秒杀等场景下极易产生热点。招商银行通过虚拟子账户技术从核心层面提供了互联网高频交易的分散策略。
              虚拟子账户把额度先分配到所有的虚拟子账户上,日间交易时只锁定子账户而不锁定主账户,子账户对业务不可见,而业务查询主账户实时累计子账户余额呈现。虚拟子账户的设计不仅很好地分散了热点,而且由于虚拟子账户可以按商户设置,在清算上提供了额外的便利。


              IP属地:福建来自Android客户端8楼2016-12-27 20:34
              回复
                5.渐进式的灰度投产策略
                为了保障更好的业务服务和风险可控,新一代核心系统投产过程需逐步切换、支持灰度发布,系统支持必要时完全回退到老的核心系统。此外,系统上线的业务中断服务的时间需要控制在2小时以内,不能对业务产生影响。
                为满足上述约束条件,新一代核心系统为投产做了专门的设计:投产过程历时半年,按先小型分行、后中小型分行、最后大型分行投产的顺序逐步推进。在分行分批上线的半年时间内,新老两代核心系统同时在线;业务路由支持新老两代核心系统;单张卡通过配置可以切换到新核心系统,同时提供新老核心的统一视图。
                招商银行新一代核心业务系统的建设是科技人员坚持自主创新,以信息科技助推创新能力、管理水平、服务能力提升的又一次攻坚战,是支持招商银行业务二次转型和一体两翼战略的重要保障。


                IP属地:福建来自Android客户端9楼2016-12-27 20:34
                回复
                  写的很棒。 收益很多。 希望多交流。


                  IP属地:北京10楼2018-04-18 15:45
                  回复