文档介绍:人民银行网间互联系统建设
1  引言
    人民银行网间互联综合前置系统就是向商业银行接入本系统提供网络接入渠道,担负着数据格式转换、连接管理、业务流管理、外围调度、外围处理,并把业务数据交后台应用服务系统处理等任务,并实现7*24小时不间断工作,本系统用户是中国人民银行总行、区域分行、省地级中支。
    系统具有如下应用功能:
◆ B/S(HTTP和HTTPS)系统代理
◆ FTP反向代理
◆ Email代理
◆固定格式(XML和非WebServices的SOAP)报文的转发
◆端口转发
◆ WebServices代理
    系统具有如下控制管理功能:
◆ IP访问控制
◆访问前置连接数控制
◆访问前置连接超时控制
◆应用系统访问日志
◆系统流量监控
◆用户管理
◆对外服务端口管理
    其中B/S代理、固定格式报文转发、端口转发的设计实现,采用基于SEDA(Staged Event-Driven Architecture )即阶段事件驱动架构,利用架构能够极大地提高系统的处理能力,其核心思想是把一个请求处理过程分成几个Stag,不同资源消耗的Stag使用不同数量的线程来处理,Stag间使用事件驱动的异步通信模式,下面给出一个SEDA处理模型。
 
 
 
 
    而且每个stag是按如下方式进行处理,即每个stag都有一个线程池来管理控制,如下图所示:
 
    从以上描述,明确了前置系统功能和核心设计思想,下面将重点描述系统是如何被构造。
2 系统构架
系统采用基于J2EE架构,支持当前几乎所有的平台,如Windows系列、Unix、Linux等,系统由于自身不保留大量数据,都采用XML保存系统的基础数据和配置管理数据,系统管理和维护都非常方便,当前系统用在Linux操作系统上,并支持RPM的安装方式,支持多种服务器,如WebLogic、WebSphere和Tomcat等,其结构示意图如下所示:
 
 
     上图展现了系统在结构上是如何设计而成,由于本系统是一个前置系统,其主要的系统功能集中在B/S代理、固定格式报文代理和端口转发代理,而这三部分的实现都是基于SEDA之上,从而极大提高了系统事务处理能力,增强了系统吞吐率。
     前置系统处于商业银行和后台服务之间的一种系统,是商业银行和后台系统的一座桥梁,下面将给出系统在整个网络环境中的拓扑图,如下所示:
 
 
     从此图可以明确,系统所起到的作用和系统需要完成的任务,其作用是实现商业银行和后台系统的桥接,其任务是完成数据转发和控制,为商业银行访问后台提供一个统一的访问端口,从而屏蔽了后台应用系统的相关信息,从而起到了保护后台系统的目的。
3 功能设计&实现
    下面将以系统的B/S代理模块来说明系统的设计与实现,从而进一步了解此系统。我们知道,B/S模式的应用系统采用基于HTTP或HTTPS的协议,商业银行发出HTTP协议请求,后台应用收到后,给出HTTP响应。如果经过前置系统的B/S代理功能来访问后台,该如何实现呢?实现过程大致如下:
◆在前置系统配置好后台应用,如后台系统应用名称:app
◆ app系统对应的后台系统IP和端口
◆前置系统对外(商业银行)服务端口为 80