• 快捷搜索
  • 全站搜索

基于小型机集群的大型银行系统应用

2017-07-27 12:57:43作者:中国邮政储蓄银行副行长 曲家文编辑:金融咨询网
邮储银行在小型机集群架构下,建成数据全国集中管理、交易处理能力最强的个人业务核心系统,从系统体系架构、高可靠性等方面进行实践,形成基于开放式平台小型机集群的行业解决方案,对大中型银行核心系统的建设具有重要的示范效应及借鉴意义。

近年来,大型主机在大型商业银行核心系统中处于垄断地位,为响应国家“自主可控”的信息安全战略,打破银行业对大型机的依赖,邮储银行在国内商业银行中率先在开放式平台上构建基于小型机集群的银行核心系统。早在2010年,邮储银行启动专项课题研究小型机组建集群替代大型机原型测试,得出“采用小型机集群构建核心系统”技术路线的可行结论。2011年,正式启动新一代核心系统建设,推行基于小型机集群支撑大型银行核心系统的整体建设方案和落地实践,以及在实践过程中关键问题的解决,系统于2013年5月正式投产上线,历经3年多的生产运行,系统各项指标正常,邮储银行在积极探索自主创新道路上迈出了坚实一步。

图片2.jpg
中国邮政储蓄银行副行长 曲家文

一、小型机集群架构技术路线的探究

  邮储银行开创性研究基于小型机开放式平台构建银行核心系统应用实践,建成小型机开放式平台架构下,存储数据量大、交易处理能力最强的银行核心业务系统,能够支持全国4万余个网点运营,预计可管理超过13亿的账户数量,日交易峰值预计达到1.8亿笔处理能力。从体系架构、高可用性、故障隔离、运行维护等方面获得了宝贵经验,通过邮储银行的成果实践,进一步形成基于开放式平台小型机集群的行业解决方案。

  邮储银行在小型机集群架构下,建成数据全国集中管理、交易处理能力最强的个人业务核心系统,从系统体系架构、高可靠性等方面进行实践,形成基于开放式平台小型机集群的行业解决方案,对大中型银行核心系统的建设具有重要的示范效应及借鉴意义。
邮储银行在小型机集群架构下,建成数据全国集中管理、交易处理能力最强的个人业务核心系统,从系统体系架构、高可靠性等方面进行实践,形成基于开放式平台小型机集群的行业解决方案,对大中型银行核心系统的建设具有重要的示范效应及借鉴意义。

  1.打破大型机垄断地位

  长期以来,我国各大型商业银行采用大型机建设核心业务系统,主机设备主要依赖进口,核心关键技术为国外厂商独家垄断。为响应“自主可控”的国家战略,邮储银行积极研究开放式平台下采用小型机组建集群替代大型机的新型架构,打破大型机的技术垄断,实现降低金融信息化建设成本,推进金融及国家重要行业软硬件产品自主可控的目标,带动相关产业链的整体发展。对国家经济运行安全、社会安全和国家战略安全具有极其重要的现实意义和长远的战略意义。

  2.核心架构关键难点

  研究基于小型机集群支撑大型银行核心系统的整体建设方案,包括体系架构、应用开发、数据分布规划、负载均衡、低延迟设计等诸多方面,系统架构需满足在高并发、大交易量及大数据量条件下处理的高可用性、稳定性及低延迟的严苛要求。许多由大型机提供的高可靠性和高性能基础特性,必须转由应用系统架构设计来保障,这对系统整体架构设计带来很大挑战。系统核心架构重点围绕着几个方面难点提出解决方案:一是如何确保小型机集群的处理性能满足高并发、超大规模数据量交易的要求;二是如何保障超大规模业务系统的高可用性、可靠性以及可扩展性;三是如何发挥每个集群节点的处理能力,充分利用集群的计算、存储资源。

二、开放式平台构建核心系统的关键研究

  运用小型机集群构建银行个人核心系统应用实践,建成一套可支撑邮储银行业务高速发展、易于业务功能扩展的数据逻辑集中的核心业务系统(以下简称“储蓄逻辑集中系统”)。重点研究在系统建设过程中遇到的各种关键问题,其中,最为关键的是确保系统高性能处理设计,为保障系统可靠性而设计的交易一致性保障机制。

  1.高处理性能设计

  储蓄逻辑集中系统的业务处理功能包括了处理压力最大的个人业务,而且从业务处理量的发展情况来看,个人业务的发展速度也非常快。为了保障现有业务的正常运行和未来业务的持续发展,储蓄逻辑集中系统建设中的重要考量之一就是高处理性能。

  在应用架构设计中,配合系统总体架构设计,在充分保障高效、稳定的主机处理性能、存储I/O吞吐量、网络I/O流量的基础上,以分离关注点的思想为中心,从架构层次考虑尽量提升处理性能,采用分离低耦合度的业务处理功能、分散节点压力、简化交易处理等手段,提升系统整体架构的处理能力。

  在数据模型的设计中,充分考虑到数据库节点的可扩展性,为提升数据库的高处理性能,系统采用数据分片技术,快速实现数据库节点的横向平滑扩展。在小型机集群架构下,数据库节点的快速扩展机制能够方便解决数据访问性能瓶颈。

  在应用架构设计中,将应用处理的性能设计放在首位,以保障系统上线后平稳运行,同时满足今后业务持续发展的处理性能需求,实现系统在应用架构上的高性能(如图1所示)。

图片11.jpg

  (1)分离处理能力

  基于保障本外币储蓄业务处理性能的考虑,将与业务处理过程耦合度较低的处理功能进行分离,减少单位硬件平台上的处理压力,保障业务处理可以获取更多的处理资源,从而提升系统的整体处理性能。

  具体而言,将与本外币储蓄业务处理耦合度不高的处理功能分离至储蓄系统以外,以保障业务处理功能对处理资源的独享性,减少处理资源在各个层次上的冲突和争用,进而提升储蓄逻辑集中系统的处理性能。同时,通过分离处理功能也使各处理功能都具备处理资源充分扩充的可能性。在考虑功能相互间耦合度的基础上从如下两个方面入手:一方面,依据性能影响分离。针对性能影响的需要进行处理上的分离,针对不同的业务处理逻辑和交易量划分出卡业务子系统、折业务子系统、汇兑子系统、参数管理子系统;针对交易处理时长划分出查询子系统;针对批量处理需要划分出日终处理子系统。另一方面,依据处理的独立性分离。调整业务模块,将机构、柜员权限控制管理,现金与凭证管理,客户信息管理,会计核算管理等业务模块独立且完整地分离到多个外围系统。同时,将储蓄逻辑集中系统划分为不同的子系统进行建设,以分散处理压力,提高系统整体处理性能。如建立独立的卡业务子系统、折业务子系统、汇兑子系统等。

  (2)分散处理压力

  对于复杂的小型机集群系统而言,较好的处理能力来源于多机集群环境下应用处理压力的分散(即不同的小型机分担了不同的处理压力)。小型机集群应用设计充分考虑应用架构对压力分散的助力,在尽量杜绝跨数据库事务处理的基础上,以系统、子系统分离方式进行逻辑架构设计(如图2所示)。一是处理流程分离。分离出性能瓶颈过程,降低与其他处理过程的耦合度,提高其并行处理能力。二是处理功能分离,减少单位硬件平台上的处理压力,充分利用硬件平台及系统软件的横向扩展能力,扩展系统整体处理能力。

图片22.jpg

  在应用架构设计中,分散处理压力的方式主要有:一是业务功能分散部署,业务功能基于业务产品、功能处理特点进行归类、整理,将业务功能按照不同的归类以分散方式进行部署,充分利用小型机集群系统特点分散系统处理压力(在分散部署时兼顾业务功能的关联性和具体业务功能的处理压力);二是将同一功能分散至多节点,除了通过在不同的处理资源“云”上分散部署业务功能,应用软件也支持以功能服务为单位,将同一功能服务分散部署到不同的应用服务器节点,利用统一的网络连接接入使多个节点可以同时接收不同的应用处理请求。

  (3)处理流程优化设计

  实时处理系统中的处理性能与处理流程的复杂程度有直接的关系(包括数据库操作的复杂程度,流程处理的复杂程度),在小型机集群应用设计中充分考虑原型涉及交易的处理流程优化。通过实时处理流程简化,有效缩短实时处理时间,提升了实时交易的并行处理能力,增加了非实时处理流程,满足了业务数据处理的完整性要求,提升了系统整体处理性能。在核心系统内部,通过建设不同的子系统将处理流程进一步分离(如通过卡业务子系统、折业务子系统分离卡、折的处理流程)并支持将子系统部署到不同的物理集群设备的方式,提升整体处理性能。

  (4)数据结构优化

  通过简化数据结构和删除冗余结构实现数据存储的优化,提升整体处理性能。数据存储是决定系统整体处理性能的关键因素之一,通过对数据结构进行简化(如流水日志存储的简化,包括流水内容的拆分和精简、字段长度的精简等)和对冗余数据结构的适当删除(如对各类登记簿、流水日志冗余项的删除),提升数据存储及使用性能,提升整体处理性能。

  (5)处理能力扩展

  随着储蓄业务的不断发展,特别是伴随各类新兴业务渠道、业务产品的开发及推广,储蓄系统逻辑集中的业务处理功能范围将不断扩大,业务处理量也将不断的增长。应用软件需要充分考虑处理能力的扩展性。

  应用软件处理能力的扩展将以计算资源(包括小型机、存储、网络设施)的扩展为基础,应用软件处理能力的扩展将主要关注如何使应用架构可以平滑的适应计算资源的扩展,并能充分利用扩展的处理资源来分担系统处理压力,进而达到整体处理能力扩展的目的。

  2.高可靠性设计

  为提高小型机集群架构下的核心系统高可靠性,在储蓄逻辑集中系统设计中,充分考虑了利用集群架构实现应用层的交易路由控制,采用负载均衡策略,控制节点或服务的交易分发,并快速感知故障节点,实时踢出故障节点,确保系统运行可靠性;同时,在故障快速隔离、交易流量控制等与系统可靠性有关的功能上,均在系统设计时做了诸多考虑和实现。

  (1)集群负载均衡机制

  储蓄逻辑集中系统的负载均衡设计,不同于普通集群架构下采用专用设备或中间件实现交易请求负载分发,而是探索一条相对独立的应用层实现交易路由控制的管理方法。应用层通过管理节点状态、交易处理情况等信息,采用轮询负载分发策略,并设置负载因子,由应用软件实现联机交易在系统内部各个子系统集群节点间的分发处理,达到节点间交易处理的均衡分派。采用应用软件自主管理集群节点状态的方法,可以及时感知集群中故障节点情况,快速剔出异常节点,交易路由控制也能够迅速调整策略,将交易请求有效分派到剩余正常节点中,待故障节点恢复后,采用定时探测机制快速感知集群节点情况,自动接入集群中继续处理交易。

  (2)系统故障隔离机制

  在应用软件系统发生故障的时候,通过故障隔离把故障造成的危害限制在最小范围内,提高系统提供对外服务的整体能力水平。故障隔离是大集中系统体系结构中提供的通过应用软件对系统实施控制的功能,应用软件设计可考虑应用服务、应用服务框架的灵活部署,支持多角度,多层次的故障隔离(如图3所示)。

图片33.jpg

  应用系统支持从服务一级到子系统一级的运行开关,通过设置响应的运行开关,可以中止指定服务、子系统的运行。同时,通过对响应服务的启停,实现对指定端口服务请求监听的停止。

  (3)系统流量控制机制

  系统提供了众多的业务功能,这些功能涉及众多业务交易,从交易量及处理内容的角度分析统计,可以发现少部分交易的使用频率、对系统性能的影响程度可能较大。

  从系统运行稳定性、持续性角度,配合物理设备、系统支撑软件(数据库系统、操作系统)的相关措施,应用软件充分考虑提高系统的高可靠性,在系统性能波动较大时间段,对少部分影响程度高的交易进行流量控制,以保障系统运行平稳。

  流量控制是大集中系统体系结构中提供的通过应用软件对系统实施控制的功能。流量控制基于大集中系统逻辑架构,依据系统、子系统、渠道等不同层面的交易流量、交易状态和确定的控制策略、控制规则对系统实施控制。

  应用软件的逻辑分层结构,在服务请求的统一受理端及处理流程中的关键环节中设计流量控制机制,结合相关的设置,将系统流量控制中认为需要拒绝的服务请求直接拒绝,以达到逐层进行流量控制的目的,同时保障在负载过重的情况下,新的自动启动的应用服务可以保持一定的处理流量。

  通过上述各应用层面的灵活部署,实现了集群中单个节点甚至多个节点故障时,整个应用系统的可用性和可靠性。

(文章来源:中国金融电脑杂志)

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

本文评论

相关文章