您当前的位置:首页 > 计算机论文>软件开发论文

复杂网络环境下数据交换平台的设计研讨

2015-07-22 10:01 来源:学术参考网 作者:未知

 随着数字信息化进程的飞速发展,各行各业的数字化工程都在如火如荼的进行,由于各应用系统建立的先后不同以及需求多样化的缘故,数据资源分布比较扩散,同时也出现了资源重复建设现象1]。在日常工作中需要的信息往往存在于不同的应用系统之中,而这些应用系统又都是各自独立,互不通信,给信息的获取带来严重障碍[2-3]。为了方便、快捷获取共享资源,将各应用系统中的资源进行整合,建立异构数据交换平台就显得尤为重要[4-5]。
  本文以湖南地税系统中各个应用系统的数据交换平台为背景,构建一个基于复杂网络环境的高容错松耦合的RDF/XML模式的数据交换平台,为解决异构系统间的数据交换提供一个可供参考的方案。
  1 数据交换平台的系统框架
  数据交换平台是一种总线式的数据交换、异构系统同步方案,主要由适配器、数据邮局中间件、设计中心、数据交换中心、监控中心和数据标准化工具六个部分组成。其系统框架图如图1所示。其中,适配器是与各外部数据源和应用系统的连接器。数据交换中心完成由一个数据交换的核心引擎构成,负责一个数据交换双方(信息提供者或信息需求者)的交换管理、数据的发送接收和格式转换等任务。数据邮局中间件是一个基于JMS技术和Web服务以及RDF/XML模式的通讯中间件,它是由一系列服务、Web Service接口、数据库以及中间件组成。设计中心是对平台进行统一配置、管理、监控的人机交互模块,负责数据交换任务的配置与定义、对外服务接口、数据队列管理和管理与监控等任务。监控中心是用来绘制交换中心的节点关系和部署,实时观察各个节点的状态。数据标准化工具用来维护数据标准化维护与管理。
  2 数据邮局中间件技术实现
  数据邮局是利用消息的耦合方式来实现系统间的互连,通过节点间的相互联系构造出数据交换环境,建立即插即用的应用消息总线,降低系统间的耦合性。数据邮局运行在数据交换平台/应用系统端,由数据交换平台/应用系统调用。数据邮局是数据交换平台/应用系统和适配器通信的桥梁,它通过消息收发器模块与适配器进行连接通信。数据邮局只有一个消息收发器,但这个消息收发器可以与多个适配器节点进行连接,从而使得适配器节点和数据邮局之间是一对多的关系。各个模块之间采用松耦合技术,可方便系统进行升级扩展。其功能框架图如图2所示。
  1) 信道设计。实现信道时,出站信道和入站信道是按照通信协议成对实现的,主要由SOCKET、HTTP、TCP、SMTP等多种协议来实现的。同时,还要保证目的适配器入站信道的协议必须与出站信道使用的协议一致。交换路由管理模块来实现信道和通信端口的选择。信道包括入站信道DrtpReadMessage类和出站信道DrtpSendMessage类。
  DrtpReadMessage类是入站信道的核心进程,主要负责Socket连接的监听和建立,用异步传输方式来接收消息,并将接收到的消息存入入站队列,信道关闭时清理其所占用的系统资源。DrtpReadMessage类主要是用来监听适配器的连接请求,由线程 (LCRequest)来进行循环监听。收到连接请求后,建立接收请求会话类(DRMSession)对象,并在会话管理的哈希表中加入请求会话类对象,然后调用Socket异步接收函数来接收消息数据包。当接收完毕后,在入站队列中写入消息,等待消息收发器的下一步操作。
DrtpSendMessage类是出站信道核心进程类,主要负责读取从持久出站队列或出站队列中的消息。将消息数据包的目的地址从路由表中的信息解析出来,并将该消息数据包发送出去,若是发送失败的消息是需要写入异常队列的,信道关闭时清理其所占用的系统资源。DrtpSendMessage类主要用来循环读取出站队列或持久出站队列中的消息,根据从路由表中解析出的消息目的地址连接远程服务器,连接成功后建立新的会话调用线程池中的线程发送当前会话中的数据。
  2) 队列管理设计。一般来说,所有的队列的消息都是存放在内存中的,便于数据的读取。但持久出站队列的消息则是保存在硬盘外的。所有的队列都是采用先进先出的模式进行管理。只能被读取一次,一旦读取后就会被系统删除。
  3) 交换路由管理设计。交换路由的管理是数据邮局实现消息交换的基础,数据邮局在交换路由的管理上,使用的是距离向量的方式,数据邮局的交换路由信息,是由相临的节点的路由信息推导而来。路由信息中包含了节点的距离和线路的带宽。数据邮局总是使用节点距离最短的路由,在节点距离相同的时候,使用带宽最高的路由。其主要工作是数据邮局交换路由表的维护。路由表包含两个部分的信息:发送端即本地适配器及接收端即远端适配器的信息。
  数据邮局实现“点到点”或“发布/订阅”的路由转发主要是通过分析路由策略。根据交换路由表的设置,交换中心的交换引擎实现消息发送方和接收方的数据交换。数据邮局根据消息头中的控制信息的不同,而选择对应的路由方法。第一种方法是点对点的方式,主要由消息发送者指定消息的目的地,交换中心根据消息头中的目的地进行消息的路由。第二种方法是发布/订阅方法,交换中心在消息服务总线建立主题组别,每个客户端都可以向这个主题发布消息或订阅消息,类似于一种广播方式。并且通过适配器通过监控服务获得所有发布或订阅的组别ID(GROUP_NO),如果发布或订阅的组别ID相同,则可以将它们相连保存,生成路由表信息。消息到达后,数据邮局会获得消息头里的组别ID,根据ID查找路由表信息,对找到的订阅适配器ID在设计中心中查找其提供的配置连接信息并调用它将数据推送到目标适配器。
  交换中心引入缓存数据库和消息中间件MQ以保证数据可靠地传送到每个目标适配器。交换中心采用存储转发策略,先将数据存放到缓存数据库中,并根据路由表来选择路由,最后将消息发送到对应的数据队列中。通过MQ可以屏蔽不同的通信协议之间的差异,简化网络编程的复杂性,以松耦合的方式独自运行。交换路由表如下所示:
  
  
  
  配置连接信息如下所示:
  
  
  
  4) 消息收发器设计。消息收发器是适配器与数据邮局交互的枢纽,主要是实现触发转发消息到其他适配器的功能。对于消息入站,入站队列或异常队列中的消息经由消息收发器读取,然后将这些消息发送到数据邮局,由数据邮局转发给数据 交换平台/应用系统。对于消息出站,数据邮局将消息发送给消息收发器,发送消息到出站队列中,并通过出站信道发送出去。如果接收消息是路由消息时,路由管理模块将更改交换路由表。如果接收消息是需要转发到其他适配器时,将直接保存在出站队列中,并等待出站信道的读取和转发送。
  3 实际应用及分析[6-8]
  根据本文提出的数据交换平台的体系框架,开发了数据交换平台原型系统。系统开发中的Linux系统运行在Red Hat Enterprise Linux 4(64位)的系统中,Window系统运行在Windows Server 2003系统中,数据库采用Oracle 11g,并配置设计服务器、适配器、数据标准化服务器、监控服务器、数据交换引擎服务器和数据库服务器的网络地址,最后,将数据交换平台原型系统在株洲地税系统进行运行测试,经过半年的运行,效果比较好。
  根据实验运行结果,分析本平台的优势具有以下特点:第一,解决了地税领域中已经建立的基于Java、.Net等技术,Windows、Linux等不同平台的大集中系统、税源管理系统、统一流转审批平台、纳税服务平台、湖南地税门户网站群、网上申报系统、财税库银系统、12366短信平台、外部数据平台、统一支撑平台、核心业务接口系统等的数据共享问题。第二,基于地税领域中的各业务应用系统,建立了可供单位共享使用的数据中心,实现了地税信息系统数据的有效整合和集中。第三,平台采用了安全可靠的数据加密和数据传输技术。第四,平台的数据采集功能强大,能够实现从Excel、FoxPro、SQL Server、Oracle等不同数据格式的数据采集和集中转换。第五,平台用户界面友好,操作简单易用。
  4 结束语
  本文研究的解决方案能很好地解决了地税领域中已建立的十几套业务应用系统存在的缺乏信息共享和互通互联的信道和平台,以及协同应用困难等问题。本平台在株洲地税系统实施后,运行良好,效果显著,为促进湖南地税系统的数据共享提供了确实可行的方法,顺应了税务系统的信息化建设要求,具有较大的推广价值和广阔的应用前景。
  参考文献:
  [1] 赵永辉.信息网络异构数据交换技术研究与实现[D].西安:西北工业大学,2007.
  [2] 李功新.基于归档日志的数据同步服务平台研究与应用[J].电力信息化,2010(8):31-35.
  [3] 陈锦平.通信层数据交换中间件设计实现[J].计算机工程与设计,2013,34(3):955-959.
  . Journal of Statistical Planning and Inference,2010,140(10):2903-2918.
  [5] 孙扬.一种面向混合数据集可视化的高效数据转换技术[J].国防科技大学学报,2010,32(3):83-88.
  [6] Fong J,Pang F,Bloor C.Converting relational database into XML document[C]//Database and Expert Systems Applications,2001.Proceedings.12th International Workshop on.IEEE,2001:61-65.

相关文章
学术参考网 · 手机版
https://m.lw881.com/
首页