• 快捷搜索
  • 全站搜索

农业银行新一代核心系统架构演进之路

2016-07-06 17:28:52作者:中国农业银行软件开发中心 吴旭春编辑:金融咨询网
近些年,软件技术发展日新月异,架构模式上已经出现异步业务处理架构、微服务架构等多种架构模式。按照目前的技术发展趋势,采用廉价PC 服务器,在开放平台上架构业务系统已经成为不可逆转的趋势。未来核心系统的架构必然逐步过渡到微内核架构模式,直至最终完全抛弃主机架构模式。

近年来,随着同业竞争的日趋激烈,银行业IT 系统的建设也快速进化,农业银行作为全渠道、全业务、国际化、集团化的国有大型商业银行,核心系统亦历经多年发展和不断变革,从“面向账务”的数据大集中,到“以客户为中心、产品快速创新、改善和提升管理能力”的蓝海工程,在不断地铸剑和亮剑过程中锤炼自身、树立新功。

新形势下新挑战

  近年来,商业银行在电子渠道的快速发展及自身互联网服务的崛起,使银行在个人客户服务方面和互联网银行的差别日渐缩小,客户行为从单纯的存现、取现快速转向刷卡支付、在线消费、在线理财等金融服务,金融交易量呈爆发式增长。同时,受互联网营销影响带来的时点爆发冲击(例如“双十一”促销),核心金融服务也会发生短时、大交易量冲击现象。
    
  随着普惠金融的日益践行,客户对银行服务的依赖度越来越强,对银行服务的质量要求越来越高,客户期望在任何时间可以通过任何渠道享受银行服务。面对竞争,无论农业银行资金多雄厚、实力多强大,只要遇到服务不稳定的情况,客户就会用脚投票,因此,效率就是生产力,稳定就是生命线,IT 系统自然成为体现企业实力的核心。

大象能起舞

  目前,传统国有大行的核心系统均构建在单一主机的架构模式下,在主机上实现客户信息、账户、卡、折、理财等核心服务,渠道、对账等外围系统则围绕核心实现简单对客服务,这种架构模式被戏称为大象架构,一只大象在中间,一群蚂蚁在周边,核心和外围轻重不成比例。

  在新形态下,新一代银行的核心系统要求高可靠、高性能、低风险、低成本,为客户提供7×24 小时不间断的金融服务。在支撑10 亿级交易量、且保障客户资金安全的前提下,还要保证IT 成本不会大幅增长。

  传统架构模式下,难以做到弹性扩容、快速改变,因此,银行业越来越无法忍受资源投入成本高、研发运维成本高的主机架构模式。要想大象起舞,必须首先“瘦身”,要从大象转向狼群,通过群集提效能。因此,为核心减负,建设主机与开放相结合的新一代核心系统架构成为必然选择。

  “高可靠、高性能、低风险、低成本”的两高两低要求,如齿轮般相互啮合,在架构层面即要保障运行顺畅,又要确保比例合适。因此,在核心系统的瘦身减负上需要精心设计和安排,循序渐进,从不同角度考量如何减负。

渐进不休克

  近年来,互联网企业的IT 架构模式广为流传。从Google到阿里、从FaceBook 到腾讯,其本质均是云计算下的微服务和分布式架构模式。在互联网风口下,仿佛不这样做架构,业务就无法运转,不这样做架构,就会被无情淘汰,但这不是事实。技术架构没有正确性,只有适合性。在面对不同问题时,必然应采用不同的技术解决方案,按最合适的方式,以最合适的成本去获取一个可能获取的最好的结果,才是架构重点。“颠覆性创新、推翻重来”,采用休克疗法,无论对哪家企业,都难以承受,现实可行的实施路径是渐进发展、逐步演化。

  传统的主机架构模式并非一无是处,主机在某些方面具有天生优势,体现在以下3 点。

  (1)高I/O 吞吐量。在IBM Z900 主机上,I/O 吞吐量已经做到24GB/ 秒以上,更高配置的主机吞吐能力更强。

  (2)数据处理能力强。数据处理能力是主机系统固有的优势,在CPU 和相关体系架构上得到特殊增强,在高并发、高性能计算方面极其强大。

  (3)高可用性。主机在高可用方面具有天生优势,不惜成本的软硬件制造,必然在可用性方面远超开放平台。

  既然主机有这么多固有优势,我们就要充分利用现有资源,并结合自身的业务特点,充分发挥其长处,采用合理的架构布局来保证业务连续性,降低运行成本,提高运行效率。为面对和解决新的挑战,农业银行的核心系统架构采用主机来应对高可靠、低风险的需求,使用开放平台来解决高性能、低成本的矛盾,建立了一套主机与开放相结合的混合架构模式。

  混合架构模式要求我们按照一定规则对服务进行切分,具体而言就是部分服务保留在主机,部分服务下移到开放平台。通过合理的服务切分,使得主机与开放平台二者各司其职、各骋所长,避免才出泥潭又入火坑。

  从当前占比量较高的客户网上交易行为来看,用户一般情况下会先查询余额,再执行交易,然后再查询一次余额或交易明细,最后确认无误才结束一笔业务。其行为特点是一次动账服务,伴随几次查询交互。为保证客户账户数据安全,确保金融服务稳定可靠,从核心系统对外提供服务这个角度出发,在系统架构上从3 个层次进行服务分离,并进行资源规划。

  首先是“功能分离”,将数据和状态保存在主机,计算功能迁移到开放平台。开放平台不保存数据,为主机运算减负,典型的交易如“余额查询”。

  其次是“数据分离”,使功能和静态数据全部迁移到开放平台,为主机运算和数据存储减负,典型交易如“交易明细查询”。

  第三是“应用分离”,将相对业务数据变化不频繁但是调用频繁的应用,迁移到开放平台,适合的案例为组织机构、用户权限相关的运营管理应用。

  这样的混合架构模式优点在于,通过功能分离,将比较消耗CPU 和内存的计算迁移到开放平台,利用开放平台的廉价计算资源完成计算任务,同时账务等关键金融数据仍然保留在主机上,不影响核心服务的稳定可靠。通过数据分离,将历史明细、交易流水等不变数据从主机迁移至开放平台,降低主机存储压力,减少主机因相关明细查询而导致的资源消耗。通过应用分离,将非核心金融服务迁移至开放平台,一方面为核心减负,精简核心服务范围,进一步降低主机资源消耗,另一方面,可以让有限的资源为业务流程优化、精细化管理等业务目标提供更有力的支撑。

创新谋发展

  混合架构模式可以合理平衡高可靠、高性能、低成本、低风险之间的矛盾,避免因业务快速发展带来的主机成本激增问题,有效缓解业务发展和IT 运行之间不可调和的矛盾。但同时也因架构调整,在资产复用、性能优化方面使得开发更加复杂,这些因架构调整引发的问题已经不能采用传统做法,必须通过新的技术手段来解决。

  在资产复用方面,主机和开放平台混合架构模式下,因运行环境的不同,往往无法实现代码通用,软件资产复用度很差,工作量大幅提升。我行通过引入金融业务数据模型和Appbuilder 开发工具,实现了前、中、后台开发语言和开发工具的统一,软件资产实现了集中管理。通过编译器和运行框架,相同代码在主机与开放平台之间可自由迁移,实现了为主机开发的代码也可以轻松地迁移到开放平台运行。

  在性能方面,开放平台I/O 和主机相比差距巨大,是主要瓶颈点。因此我们将解决开放平台性能的重点放在网络通讯和数据库I/O 吞吐量两个层面,以提高整体性能。网络通讯层面通过采用NIO 技术实现异步通讯服务,大幅降低通讯对资源的消耗,减少通讯阻塞导致的资源浪费。在数据库I/O层面,对传统关系型数据库,采用数据分片和分布式数据访问,以及引入新型大数据软件(如Hadoop),将单点I/O 分布到不同服务器上,利用多服务器并行处理,以提升I/O 吞吐能力,降低和缓解数据存储I/O 较主机相距太大的弊端。

未来充满想象

  任何一种架构都不可能一劳永逸地解决所有问题,随着业务发展和软硬件技术的变革,架构模式也必然随之变化。近些年,软件技术发展日新月异,架构模式上已经出现异步业务处理架构、微服务架构等多种架构模式。在硬件技术发展方面,PC 服务器的处理能力、I/O 吞吐量在不断提高,可用性也在不断提升,逐渐缩小了与主机的差距。

  按照目前的技术发展趋势,采用廉价PC 服务器,在开放平台上架构业务系统已经成为不可逆转的趋势。未来核心系统的架构必然逐步过渡到微内核架构模式,直至最终完全抛弃主机架构模式。

(文章来源:《金融电子化》杂志)

扫码即可手机
阅读转发此文

本文评论

相关文章