本文重点介绍集群架构方案,WEB服务器使用IBM HTTP Server、应用服务器使用Websphere,WEB服务器负载均衡使用F5(带SSL),应用服务器负载均衡使用WEB服务器的IHS插件。
当前端发起一个request请求-->负载均衡到web服务器-->web服务器负载均衡到应用服务器,下面以个人网银的系统架构为原型介绍整个架构流程:
1、系统架构涉及相关概念
集群:是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放性。
和传统的高性能计算机技术相比,集群技术可以利用各档次的服务器作为节点,系统造价低,可以实现很高的运算速度,完成大运算量的计算,具有较高的响应能力,能够满足当今日益增长的信息服务的需求。
而集群技术是一种通用的技术,其目的是为了解决单机运算能力的不足、IO能力的不足、提高服务的可靠性、获得规模可扩展能力,降低整体方案的运维成本(运行、升级、维护成本)。只要在其他技术不能达到以上的目的,或者虽然能够达到以上的目的,但是成本过高的情况下,就可以考虑采用集群技术。
负载均衡:是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器独立地回应客户的请求。均衡负载能够平均分配客户请求到服务器列阵,籍此提供快速获取重要数据,解决大量并发访问服务问题。这种群集技术可以用最少的投资获得接近于大型主机的性能。
SSL:是一个安全协议,它提供使用 TCP/IP 的通信应用程序间的隐私与完整性。因特网的 超文本传输协议(HTTP)使用 SSL 来实现安全的通信。
在客户端与服务器间传输的数据是通过使用对称算法(如 DES 或 RC4)进行加密的。公用密钥算法(通常为 RSA)是用来获得加密密钥交换和数字签名的,此算法使用服务器的SSL数字证书中的公用密钥。有了服务器的SSL数字证书,客户端也可以验证服务器的身份。
2、专业词语定义
Oracle:大型数据库软件。
WebSphere:用于开发、集成、部署和管理大型分布式Web应用、网络应用的JAVA应用服务器。
F5服务器:负载均衡服务器。
SSL服务器:利用数据加密技术,确保数据在网络上之传输过程中不会被截取及窃听的服务器。
IHS:IBM HTTP SERVER,用于转发从SSL服务器到WAS服务器的http请求。
3、硬件配置
4、软件配置
5、网络拓扑
拓扑图各服务器说明:
上图为整个网银系统的拓扑图,本文以个人网银系统做架构说明,其他系统拓扑图可做参考。
CFCA服务器:中国金融认证中心(China Financial Certification Authority,简称CFCA)是经中国人民银行和国家信息安全管理机构批准成立的国家级权威安全认证机构,是国家重要的金融信息安全基础设施之一。在《中华人民共和国电子签名法》颁布后,CFCA成为首批获得电子认证服务许可的电子认证服务机构。
RA服务器:CFCA证书注册机构(RA)负责用户身份申请审核,并向CA申请为用户签发证书。CFCA证书注册机构(RA)一般设置在商业银行的总行、证券公司、保险公司总部及其它应用证书的机构总部,受理点(LRA)设置在商业银行的分/支行、证券、保险营业部及其它应用证书机构的分支机构。RA系统可方便集成到各类业务应用系统。
CFCA提供自建RA模式和托管RA模式; CFCA的 RA支持Web方式和C/S方式。
DMGR服务器:Deployment Manager的简称,是管理代理程序,它提供集中式管理单元中所有节点的可视化交互管理视图,那么Deployment Manager就为单元中所有元素提供了单一的管理控制中心点,每个单元都会包含一个Deployment Manager,由Deployment Manager提供管理功能来修改单元的主配置文件。
签名验签服务器:签名验签服务器是面向各类电子数据提供基于数字证书的数据签名服务、并对签名数据验证其签名真实性和有效性的专用服务器。
签名原理:sign.ocx控件与USBKey通过符合微软标准的CSP(Cryptographic Service Provider)接口库通讯,sign.ocx将数据传输给CSP接口,USBKey获取后通过RSA算法对数据加密,再CSP接口传送给sign.ocx,至此,签名过程完毕。
验签原理:在JS中从sign.ocx控件获取到签名后的数据,将此值传送到服务器,调用验签服务器的验签,至此,验签完毕。
6、个人网银逻辑架构图
集群方式部署包括:
F5(带SSL模块)服务器
两台F5-SSL服务器基于热备方式。
WEB服务器
WEB服务器的应用负载通过F5设备实现。
J2ee应用服务器
通过WEB服务器的IHS插件对J2ee应用服务器进行应用负载。
个人网银数据库
个人网银数据库采用RAC方式部署。
逻辑架构流程描述:
用户访问网银网站;
request请求由F5负载均衡到其中一台WEB服务器;
WEB服务器接收到请求后,通过WEB服务器的IHS插件对J2ee应用服务器进行应用负载,将请求负载均衡到4台app的其中一台,4台app采用主-主模式;
应用服务器接收到请求后,处理业务逻辑,操作oracle数据库,oracle采用RAC方式部署。
7、应用架构
应用架构描述:
WEB服务器
两台WEB服务器;
WEB服务器采用和部署IHS插件;
通过F5对WEB服务进行应用负载;
每个WEB服务指向4个APP个人网银应用,通过HIS插件对APP进行负载均衡。
网银集群管理服务器
WAS为6.1.0.23 ND版,管理服务器位于单独两台机器,HA部署,DM profile存放于此盘阵列;
通过DMGR服务器对个人网银集群进行管理和监控。
网银应用服务器
个人网银每台应用服务器上分别安装两个AppServer,个人网银两台服务器上的4个Server组成一个集群;
应用日志存储到机器本地文件系统上;
通过WEB服务器IHS插件对网银应用服务器进行负载。
数据库服务器
Oracle采用RAC方式部署;
两台数据库机器,每台上面安装数据库;
两个数据库组成RAC;
应用对两台数据库的访问不进行负载均衡,当一台数据库发生故障时,访问RAC中的另一台数据库;
数据库是主备模式,一台机器部署主访问数据库,另一台机器部署次访问数据库。
本文作者:杨士宏(点融黑帮),现任点融网FinTech部门软件工程师,业务爱好喜欢打球,看电视,旅游等.