信息数据交换平台
设计方案
目录
1. 项目背景 ................................................................. 4
1.1. 概述 ............................................................. 4 1.2. 现状分析 ......................................................... 4 1.3. 需求描述 ......................................................... 5 2. 目标与原则 ............................................................... 6
2.1. 建设目标 ......................................................... 6 2.2. 建设原则 ......................................................... 7 2.3. 定义与约束 ....................................................... 7 3. 建设内容与依据 ........................................................... 8
3.1. 建设内容 ......................................................... 8 3.2. 建设依据 ......................................................... 9 4. 技术路线 ................................................................. 9
4.1. 技术架构 ......................................................... 9 4.2. 应用架构 ........................................................ 15 5. 系统功能 ................................................................ 18
5.1. 功能划分 ........................................................ 18 5.2. 系统管理 ........................................................ 21
5.2.1. 运行环境配置 ................................................ 21 5.2.2. 系统注册 .................................................... 22 5.2.3. 目录服务 .................................................... 23
5.2.3.1.类别维护 25 5.2.3.2.元数据维护 27 5.2.3.3.目录索引管理 28 5.2.4. 权限管理 .................................................... 28
5.2.4.1.操作者权限 29 5.2.4.2.系统用户权限 30 5.2.5. 订阅定制 .................................................... 31
5.2.5.1.数据校验 33 5.2.5.2.订阅 34 5.2.5.3.退订 35 5.2.6. 日志定制 .................................................... 36 5.2.7. 安全管理 .................................................... 38 5.2.8. 其它参数设置 ................................................ 39 5.3. 数据交换服务 .................................................... 40
5.3.1. 数据交换流程 ................................................ 40
5.3.2. 消息管理 .................................................... 41 5.3.3. 队列管理 .................................................... 42 5.3.4. 发送管理 .................................................... 42 5.3.5. 接收管理 .................................................... 43 5.3.6. 封装解析 .................................................... 44
5.3.6.1.封装 44 5.3.6.2.解析 45 5.3.7. 数据整编 .................................................... 46 5.3.8. 数据保存 .................................................... 47 5.3.9. 其它相关服务 ................................................ 48
6. 项目实施安排 ............................................................ 48
1. 项目背景
1.1. 概述
经过近几年的信息化建设,某市水务局的计算机网络和应用系统的建设均取得了长足发展,随着信息技术的发展,水务信息化建设的相关标准与方式方法也在不断完善和规范,为后续相关业务信息化建设奠定了坚实的基础。
某市水务局已经建设了骨干通讯网,构建了机关内部的计算机局域网络平台和数据库系统。
水务局目前已经运行的有近30个业务系统。以水务局“水务信息平台”为核心的水务信息网已基本建成。水务信息化标准数据库已经建立并在不断的规范当中。目前某市水务局已建立了水文数据库、供水数据库、水环境数据库、工情数据库、灾情数据库、水土保持数据库、社会经济数据库和图形图像地理信息数据库八类数据库,这些数据库均是在ORACLE9I版本数据库之上。水务局对下属机关、局属、县区单位分为A、B、C三类分中心机构,大部分分中心均已建有自己的水务业务信息系统,且基本实现与局中心水务平台相连,进行数据交换与共享。
1.2. 现状分析
某市水务信息平台虽已取得的很大进展,但由于各分中心的业务系统的应用结构、技术结构以及数据库差异较大,尤其各分中心的业务系统所用的数据库不尽相同——有不同版本的ORACLE、SQL SEVER等,采用的开发技术不同——如J2EE、DOTNET等,不同系统之间需要实现数据的及时共享与互通,局中心尚没有建立完善的信息共享交换机制,不能及时获得各分中心的水务信息,达不到为决策支持提供信息服务的目标,各系统间的数据交换成为数据共享的最大障碍,因此需要建立一个统一的、适用性广的信息交换平台,用于交换局中心与各分中心之间的各种数据,从而实现数据及时共享与交换。
1.3. 需求描述
建设一个开放的、可扩展的、适应性强的、高效稳定的信息交换平台,平台应具有如下功能:
1、 方便的实现某市水务局及各分中心业务应用系统之间的数据共享与交换;
2、 实现不同类型的数据库对接:即通过本平台能够实现不同类型数据库之间的互通,可以将数据源表和目标数据表对应起来;
3、 数据对导:即本平台支持对结构相同或相似源数据表与目标数据表内数据的直接导出导入操作,对导前可以配置导出导入字段的对应关系,同时应支持通过视图进行对导数据的功能;
4、 数据类型自动转换:指通过平台实现对不同数据类型数据的自动转换功能,比如一个字段由STRING型转换为另一个数据库接受的VARCHAR型数据;
5、 消息队列的自动管理:本平台可以自动判断并管理消息队列,按消息的优先次序或级别来安排消息传输,建立良好的数据传输机制;
6、 数据的自动封装与解析:本平台可以对指定数据按一定原则进行封装,封装时可以自动判断数据包的大小,按指定大小封装成一个或多个包并记录包间的关系,在接收数据包后,可以对包进行自动解析;
7、 安全控制:本平台应具有严格稳定的安全机制,确保数据安全,即能够根据需要自动按规则对传输数据进行加密解密、根据不同请求者的权限级别设置对应的数据访问权限、自动记录数据丢失与否及传送成功与否的记录,并在传输失败后,能够以GSM的方式通知接收方本次传送失败,请等待下一次传送;
8、 日志:本平台要有健全完备的日志功能,根据需要记录系统运行过程中的所有相关信息,尤其当系统遇到意外而无法正常工作时,应有相关日志以备查阅;
9、 运行稳定:由于信息交换平台要完成局中心与各分中心之间所有基础数据、业务数据、实时数据甚至空间数据的时实共享与交换,因此本平台要长期稳定的运行,能够处理好由于多方同时发送请求而造成的堵塞或冲突等情况,同时具有一定的网络故障应对能力,即当网络发生故障时,交换平台应能自动记录正在传送途中的数据信息,以便网络恢复时,自动续传,支持断点续传;
10、 鉴于信息交换平台在整个水务信息化中的重要地位,本平台在设计时尽量考虑到后期的可扩展性、开放性和广泛的兼容性要求,不能因为具体业务系统的变化或水务信息平台的某个问题而影响正常的数据交换业务,更不应出现平台无故中止或停止服务而进行平台扩展调试的情况;
11、 平台尽可以满足人性化,可配置的灵活要求。
2. 目标与原则
2.1. 建设目标
信息交换平台建设在水务局中心,为局中心与各分中心、各分中心之间的数据共享与交换服务,并兼顾分中心与采集系统之间的信息交换,实现整个水务信息网用户中任意两个用户间的数据共享与交换,主要实现以下目标:
1、数据交互:能够将一个数据库的某一表中数据,根据一定的要求导入到另一数据库相应表中;
2、资源共享与订阅:能够实现数据资源的共享设置、共享级别设置,订阅数据资源等操作,并能按照订阅内容交换数据;
3、信息级别权限控制:一定级别的工作站只能访问该级别或级别要求更低的共享资源;
4、数据操作源和目的数据库可以为多种数据库:如:SQL Server,Oracle等;
5、数据交换要支持多种数据类型:如:数值、字符、日期、文件等; 6、信息交换平台运行模块要以服务程序模式运行;
7、信息交换平台支持数据配置扩展,可以通过配置文件来更改运行环境、共享资源数据内容以及共享级别;
8、日志记录:创建日志,方便调试和日后查看; 9、系统具有长时间稳定运行的能力;
10、有一定的网络故障处理能力,当网络出现问题时,系统可以在一定程度上采取自救措施,如支持断点续传和发送短信息给等待用户。
2.2. 建设原则
本平台建设遵循以下原则:
1、实用性原则:以实用为第一准则,切实满足管理和业务需求; 2、安全性原则:设计采用有效的软件安全保护、防止非法入侵等措施,保证应用系统、数据的运行安全;
3、先进性原则:设计采用先进软件技术,并考虑适度超前,为今后需求变化留有余地;
4、可靠性原则:技术成熟,保证系统稳定可靠长期运行; 5、完备性原则:设计功能全面、完整;
6、可扩充性原则:采用先进开发手段,组件化的开发模式,以保证可扩充性;
7、标准化与开放性原则:系统设计符合标准化建设和开放的原则。
2.3. 定义与约束
1、元数据:元数据是一组描述数据本身基本特征和属性的数据,又称为“数据的数据”。从本质上说,元数据是一种数据结构标准,它提供了一种框架体系和方法来描述、表征数字化信息的基本特征,并通过一套通用的编码规则,将来源各异的数字化资源归纳到一个标准的体系中。
2、数据抽取:现有数据库内的数据一般都是以某种关系型存在的,构成一个数据集合,抽取即是把数据库内的数据按照一定的规则提取出来组成一个满足自身数据规范要求的数据集合的形式。
3、SOA(service-oriented architecture,也叫面向服务的体系结构或面向服务架构):是指为了解决在Internet环境下业务集成的需要,通过连接能完成特定任务的独立功能实体实现的一种软件系统架构。SOA是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。
4、节点:本文中指整个水务网内与局中心相连接的各分中心(包括局中心)。 5、系统用户:使用本平台进行数据交换或共享的系统,即系统用户在本文中指一个应用系统。
6、操作者用户:操作本平台的操作员,即指通过本平台提供的人机交互界面操作本平台完成指定系统功能的人。
7、缩略语:在本设计方案中,信息交换平台或共享交换平台有时被称为本平台或本系统,或在上下文描述时,简要称为系统、平台,均指本信息交换平台。
3. 建设内容与依据
3.1. 建设内容
依据信息交换平台的承担任务、某市水务信息化建设现状及发展形式的要求,本平台建设内容主要分为下面几个方面:
1、目录服务
系统提供目录服务功能,统一管理市水务局中心、各分中心的基础信息、各类业务信息、各种统计分析等数据——包括相关图表数据,利用目录服务手段为各用户依据权限设定范围提供独享数据资源、共享数据资源的快速检索与定位。
2、基础信息资源服务
通过建立专门的基础信息维护模块接收各种系统所需基础信息资源、公共信息资源,从而为各级用户之间实现信息资源的共享与流通提供必要保障。
3、元数据定制服务
考虑到本系统的可扩展性及与各类业务系统之间的兼容性,系统对用到的各类基础信息元数据、业务信息元数据提供用户可定制功能,即用户可通过自身业务需要定制自己的元数据信息,再根据对元数据的维护、整理、分析、接收、发送、订阅分配等业务操作实现数据交换与管理功能。
4、数据订阅服务
局中心、各分中心用户均可订阅其它用户作好订阅分配的数据信息集,可以根据各自权限及所需订阅信息订阅其它系统或中心的信息数据,从而最大限度的包容了由业务变动带来的需求信息变化,也灵活的实现了不同时期、不同级别用
户对数据的不同需求。
5、信息交换服务
本交换平台为局中心、各分中心用户所需的各项服务进行统一管理,提供对各类数据交换的统一规范化服务与管理,为跨部门、跨区域、跨级别、跨系统的数据交换提供服务。
6、支撑服务
为了保证本系统稳定、安全、顺利的运行,本平台提供全面的支撑服务体系。如安全认证服务、审计服务等。
7、日志
作为安全服务的补充,本平台提供完备的日志管理机制,并对日志进行分级处理,用户可根据自身需要在系统内设置本平台所要记录的日志信息,便于后期查看。
3.2. 建设依据
《软件工程术语》GB/T 11457-1995
《计算机软件产品开发文件编制指南》GB/T 8567-1988 《某市水利骨干通信网——信息高速公路总体规划》 《信息技术软件生存期过程》GB/T 8566-1995 《计算机软件质量保证计划规范》GB/T 12504-1990 《计算机软件配置管理计划规范》GB/T 12505-1990 《软件维护指南》GB/T 14079-1992
《计算机软件可靠性和维护性管理》GB/T 14394-1993 《软件支持环境》GB/T 15853-1995
4. 技术路线
4.1. 技术架构
1、技术模式
作为整个某市水务信息网络各应用系统之间的数据交换接口,为了保证其可扩展性和系统的可靠性,本信息交换平台采用组件化的设计模式实现,各组成模块尽量作到松散耦合,可以无限制扩充,从而实现与其他系统模块的无缝集成,该系统采用面向对象的组件化技术建设基于C/S结构的系统,并且以Windows服务程序模式与Windows程序用户交互模式结合方式运行。这种设计具有以下一些优势:
✓ 以服务方式运行的系统可以在服务器不登陆的情况下,数据交换就能够运行;
✓ 服务程序与交互界面并存,这样可以实时监测和控制交换程序的运行,方便维护和调试;
✓ 系统提供用户操作界面,可以让用户非常便捷地完成相关设置与订阅操作;
✓ C/S结构程序最适合网络间数据交换,能够保证程序的持续稳定运行; ✓ 系统采用ODBC数据源来连接数据库,解决多种类型的数据库源的连接问题。
本系统技术框图如下:
系统1系统2…系统n交换服务模块系统管理模块标准规范消息管理队列管理发送管理接收管理...目录管理权限分配资源配置日志管理...安全机制Dot Net/ODBC系统平台(网络、操作系统) 交换平台技术框图
2、技术实现
系统内各具体功能模块均由相应的组件(或称构件)构成,相关组件由容器
统一管理,根据服务对象与功能的不同,容器可分为“管理容器”和“交换容器”分别完成系统与数据的管理及数据交换功能。功能组件按其功能分别归由相应的容器统一调配管理,组件间的关系通过配置文件(XML)实现,以达到松藕合的目标。
组件按其作用与重要程度可分为“标准组件”和“附加组件”两种,标准组件是信息交换平台为完成正常数据管理与交换功能必要须的功能组件,附加组件是指为了使平台更好的运行,为平台添加一些附加功能而设计的组件。附加组件也是可选组件,平台根据相关配置动态实现附加组件的调用,当平台加入的附加组件并已配置了相关信息时,平台运行过程中会自动调用此组件实现附加功能;当平台的配置信息改变删除附加组件时,平台不再调用附加组件,而进行常规运行,并不影响正常的平台功能。
本平台设计的组件、分类及作用描述如下表:
序号 组件名称 容器 类型 1 2 3 注册组件 节点的IP地址等信息,启动共享交换平台 标准资源管理 组件 完成订阅其他信息节点共享资源元数据,生成本节点订阅信订阅组件 管理容器 4 监控组件 的数据 可选执行指定的本节点信息数据与其他节点可共享数据的比较,5 6 7 信息比对 流量分析 数据抽取 定期从指定的数据库或文件夹中读取数据 封装与分8 发 9 通讯组件 定的资源共享节点 容器 组件 阅方分别封装各自的数据包,然后分别发送给接收方 将封装、分发后的数据报文,通过底层网络链路,传送到指交换标准将数据抽取的结果按照数据报文要求进行封装,每个资源订组件 报告比较结果 统计某时间范围内,本节点共享数据输出和输入数量统计 依据信息资源元数据描述以及信息资源的时间特性,定时或息资源树 实时监视本节点信息资源交换状况,包括本节点接受和发送完成本节点信息资源目录的建立,自动登记信息资源元数据 功能描述 完成在上级主交换节点的注册,获取本节点相关编码、上级序号 组件名称 容器 类型 功能描述 将信息节点接收到的数据包,按照接口规范,进行拆分、解10 分包组件 析以及必需的编码转换,转化为本信息节点对应数据的存储格式 将分包后的数据,写入信息资源元数据描述的数据库或文件11 存储组件 夹中 在通讯组件运行前执行,将数据内容进行加密、压缩后,生12 加密压缩 成新的加密压缩报文 在分包组件完成后执行,主要完成针对水务业务的一些专业13 关联计算 可选组件 计算需求,如:由水位—库容曲线,按照水位数据计算水库蓄水量等 在关联计算组件运行后执行,根据信息资源时间特性需求,14 信息整编 生成新的不同时间频率的数据 交换平台将自动记录运行日志。可以定义多个级别,不同级15 审计组件 别记录日志的详细程度不同 注:节点指使用本平台的各个系统用户。 以上组件与主要功能模块的对应关系如下:
注册目录服务保存日志辅助功能注册资源管理存储审计订阅发送服务接收服务整编信息对比订阅加密压缩封装分发封装解析分包关联计算信息整编业务主体安全消息管理队列管理其它服务基础服务通讯监控流量分析数据抽取
组件与功能对应关系
上图中浅黄色为组件,淡蓝色为功能模块,箭头表示功能与组件的主要对应关系。
3、技术特点
总结起来信息交换平台具有以下技术特点: 1) 元数据
采用元数据理念管理共享与交换用到的各种数据元素,元数据管理基于信息资源目录管理的资源体系实现,本平台元数据描述除清晰描述信息自身含义外,还清楚的描述信息的存取方法、基本属性等信息,为建立在信息资源目录基础上的数据抽取创造条件。
2) SOA架构
本平台采用SOA技术架构进行开发,各组件统一在容器中进行规划并接受容器的统一调用与管理,实现组件间的松散藕合,这种组件化的模式使平台兼备技
术的先进性与灵活性,最大程度的兼顾了当前和今后应用系统的多样化,同时为本平台的无限制扩展提供可能。
3) 通信技术
信息交换平台是基于网络运行的平台,数据传输采用SOCKET同步机制传输,并且在传输过程中,平台自动对数据包大小进行检测并加以限制,当欲传输数据大于包的限制容量时,则分为多个包进行传送,并自动记忆包间的关系,对检测到不合法的包进行自动舍弃,同时发送舍弃信息给数据发送方。
4) 并发技术
由于信息交换平台运行时需要同时进行多种处理,所以系统设计时采用多线程并发设计,系统主要并发线程有:轮询发送订阅数据线程、接收处理数据线程、订阅数据线程、监听订阅数据线程等,接收每个资源方发送的数据时,每个接收处理一个线程。
5) 轮询技术
信息交换平台运行时需要不停检测新数据,如果检测到新数据则将数据发送给订阅方。所以系统采用时间轮询不停检测和发送新数据。
本平台设计采用线程睡眠Sleep等待方法实现。Sleep等待是让此线程停止执行一段时间,然后再继续运行进行轮询。这样能有效避免两个线程因同时使用资源而产生冲突。
轮询时间间隔可以通过系统运行环境配置文件进行设置。 6) 扩展接口
为了使平台在后期维护时方便快捷,不停止正常工作或尽可能短时间的中断正常工作,系统应具有一定的可扩展性,预先考虑到可能存在的接口,目前考虑到的接口如下:
✓ 数据库操作接口:可以扩展对多种数据库类型的访问,以适应不同的数据库类型;
✓ 数据读取接口:可以采用多种读取数据的方式; ✓ 数据保存接口:可以完成多种情况的数据保存; ✓ 数据整编接口:扩展数据整编功能的接口;
✓ 交互消息接口:各工作站交互不同类型消息时的扩展接口;
✓ 数据传输接口:数据在网络间传输其它技术扩展接口。
4.2. 应用架构
由于本平台应用于以市水务局为中心的某市水务信息网络,负担的数据共享与交换范围包括局中心、各级分中心及具体采集终端,因此本平台以局中心为中心采用集中管理的方式,即各分中心必须登录局中心平台进行注册,获得本分中心(以下称节点)的共享级别及相应的共享数据,从而再与其它分中心进行数据共享与交换。其交换节点以“星型”结构存在,如下图:
市级共享平台(前置机)分中心1注册、登记注册、登记注册、登记分中心n局中心注册、登记注册、登记注册、登记分中心2……分中心3 节点的星型结构
在实际数据交换中,本平台实现水务信息网内所有节点之间的数据共享与交换功能,即任意两个节点之间都可以进行信息共享与数据交换,因此从数据交换的角度看,属“网状”结构,结构图如下:
市级共享平台(前置机)共享交换局中心共享交换共享交换共享交换分中心1共享交换共享交换共享交换共享交换共享交换共享交换分中心2共享交换共享交换……共享交换分中心n共享交换共享交换分中心3共享交换
信息交换“网状”结构
本平台功能架构总体上可分为三层:表现层、认证层和应用层,其中应用层可分为交换服务应用与系统管理应用两部分。
平台功能架构图如下:
人机交互界面表现层身份权限认证认证层数据交换服务消息管理队列管理发送管理接收管理数据解析数据整编数据保存其它服务应用层日志管理安全管理系统管理目录管理权限定制参数设置订阅定制环境定制
平台功能架构图
应用层:在本信息交换平台中,系统管理模块作为平台应用层的一部分,也是平台运行的基础模块,完成平台运行环境、平台运行过程中相关进程的运行方式、时间特性、服务对象与区享等级、资源信息等的设置操作,为实现数据交换提供基础支撑服务;数据交换服务模块同样是应用层的组成部分,完成具体的数据交换功能,根据系统管理部分的设置信息有效有序的管理消息、进行数据的接收、发送、解析、整编及保存等相关操作。
认证层:身份认证属认证层,是指在系统运行过程中,根据系统管理相关部分的设置信息判断发出订阅申请的用户在本平台中具有的共享级别信息,从而作到权限的有效控制,防止信息泄露。
表现层:人机交互界面是表现层内容,是计算机软件操作者与软件系统进行交互的途径,本平台除在后台自动运行的数据传输及进程管理方面的功能外,所有系统参数设置、资源定制管理方面的操作均通过表现层的人机交互界面完成。
5. 系统功能
5.1. 功能划分
信息交换平台除一部分设置功能需要用户通过界面控制完成外,数据交换功能需要长期稳定的在后台运行,为水务信息各应用提供数据共享与交换服务,因此本平台功能可分为系统管理(或叫数据交换管理)和数据交换服务两部分。其功能结构图如下:
数据交换平台系统管理数据交换服务运行环境配置注册管理目录服务管理权限管理其它参数设置订阅定制日志管理安全管理消息管理队列管理发送管理接收管理封装解析数据整编数据保存其它服务 信息交换平台功能结构图
1、系统管理模块
分为运行环境配置、注册管理、目录服务管理、权限管理、订阅定制、日志定制、安全管理、其它参数设置七个子模块,功能概述如下:
✓ 运行环境配置:完成平台运行的系统环境、可以连接的数据库类型、连接方式及参数、可以接受转换的数据类型等支持系统运行环境的基础信息配置。
✓ 注册管理:完成通过本平台进行数据交换与共享的所有应用系统在局中心平台的注册,获取相应访问信息范围及其它辅助信息,只有在本平台注册过的系统才可以通过本平台与局中心及其它分中心之间实现数据的交换与共享。
✓ 目录服务管理:系统以目录的形式管理所有信息元素,对各类信息元素进行分类管理,分类从多角度进行,如按基础信息、业务信息;服务对象(这里指局中心各系统及分中心相关系统)等,每种分类及具体信息均按一定规则被编制成目录形式,且在整个目录中均有唯一的ID标识,同时基础信息和业务信息
元素按可以访问的秘密程度分组,与系统用户组对应,这样便于对有请求的系统用户(这里指发出请求的相关应用系统)进行访问内容控制,即根据目录索引快速定位到当前用户有权访问的数据范围,并迅速定位用户指定信息。目录信息的类别、内容可根据实际需要由人工或系统设定自动增加整理,并定时给出总目录详细信息及目录变化记录等。
✓ 权限管理:在本平台中,权限管理分为两部分完成,一是对操作者的管理与权限分配,实现操作者使用本平台具体功能的权限对应管理;二是对系统用户的可访问信息的权限设置,所有欲使用本平台进行数据交换的应用系统需首先在本平台上注册身份,注册方式可以由系统自动判别注册也可以由管理员通过相关界面输入系统内,并对各用户可以访问的信息内容进行权限等级划分——不同级别的用户可以访问的资源范围不同。在此后的运行中,平台会自动判断提出请求的用户身份并与其权限对应,从而保证用户的正当权力和数据信息的保密性。
✓ 订阅定制:各用户均可订阅其它用户作好订阅分配的数据信息集,可以根据各自权限及所需信息订阅其它用户的可订阅信息数据,从而最大限度的包容了由业务变动带来的需求信息变化,也灵活的实现了不同时期、不同级别用户对数据的不同需求。
✓ 日志定制:本平台将日志按重要程度分级管理,并由用户进行设置(当然系统会提供默认设置)应记录的日志范围,系统会根据设置信息记录相关日志。
✓ 安全管理:包括信息数据安全及网络安全两部分,信息安全又为分访问安全与传输安全两种,访问安全是指本平台通过对用户进行身份认证、权限判断的方式保护正当用户的应得权力,同时避免信息的非法访问;传输安全指本系统对传输数据按一定规则进行加密封装之后再行传送,接收时同样首先进行解密和有效性验证后才对数据进行解析、整编、保存相关处理;网络安全是考虑到本平台的数据交换服务进程要长期依托网络运行,因此应具有一定的自动监测网络状态及故障应对措施,确保信息的完整和安全。
✓ 其它参数设置:支撑系统运行及方便用户的其它参数设置功能。 2、数据交换服务模块
包括消息管理、队列管理、发送管理、接收管理、封装与解析、数据整编、数据保存和其它相关服务八个子模块,功能概述如下:
✓ 消息管理:平台提供消息管理机制,统一管理经过平台的收发信息。各用户发送过来的请求中均有各自的特征信息,平台接收与准备发送的消息也同样以一定规则验证特征信息,然后根据指定原则对各种消息进行验证、归类、排序等一系列管理操作,便于通过平台的各类消息有序的传递。
✓ 队列管理:当通过本平台的请求较多时,如果不对各类消息加以控制会产生资源争用或并发冲突的现象,并且可能会出现优先级较高的请求反而等待时间过长现象,因此需要平台对队列进行有序管理,队列管理根据消息分类的结果及发出请求的用户优先级及消息本身的优先级进行综合判断给出合理排序。
✓ 发送管理:本交换平台在处理各类数据交换与共享请求时,会向请求方发送处理结果或其它中间信息,本平台依据发送数据包的特征标识找到接收方,并首先探测网络状况,许可时即进行发送操作,并自动记录发送日志。
✓ 接收管理:与发送管理相对应,本平台在接收各用户传送过来的信息时,首先验证数据包的有效性、接收目标等内容,将数据解析后接收并归入相应的目标信息集队列等待下一步处理。
✓ 封装解析:封装与解析是与发送和接收相对应的两个过程,封装指在数据发送前,要按指定规则对数据进行加密、压缩、封装,当数据量较大,一个数据包装不下时,系统自动将信息分成多个数据包,并在每个包内加上相应标识后准备发送;解析即是接收方在接收到对方传来的数据包后,对数据包进行规则解密、验证数据的有效性,通过后即可整编保存数据。
✓ 数据整编:数据接收后,要根据数据特性标识进行整编、分析、归类及相关转换处理,然后准备保存。
✓ 数据保存:整编无误的数据即可以保存到目的数据库的相关表内,以完成数据交换的全部操作。并记录相关日志。
✓ 相关服务:提供数据交换过程中其它相关服务功能如流量分析、关联计算等。
由于本系统是服务系统,因此只有必要的管理设置模块有人机交互界面,其余大部分功能没有人机界面。系统主界面示意图如下——没有体现出来的功能模块均没有交互界面:
环境配置目录服务权限管理订阅定制参数设置参数设置日志管理欢迎使用数据交换平台!
信息交换平台系统主界面
5.2. 系统管理 5.2.1. 运行环境配置
运行环境配置维护本平台可以处理的数据库类型、连接方式及具体数据库实例名、所属数据库类型和相应的连接参数信息。具体描述如下:
1、数据库类型维护
维护平台可以支持的数据库类型,如Oracle9i、Oracle10g、SQL Server2000、SyBase等。每个数据库类型有一个唯一编码与之对应,维护信息包括数据库类
型名、编码、描述等。数据库类型不能随意删除,当前数据库在使用时,不可以删除。
2、连接方式维护
平台可以采用的数据库连接方式,如ODBC、JDBC、ADO等维护,维护信息包括方式名称、编号、可用的数据库类型描述等。
3、数据类型与转换
维护不同数据库所包含的数据类型,并配置不同数据库、不同数据类型之间转换关系,定义转换格式。
4、数据库实例
指本平台在具体数据交换时要连接的数据库实例名、所属数据库类型及相关连接参数信息,便于平台自动根据系统连接、调用相应数据库获得所需数据。
以上各信息之间可以存在关联,或使用一定的方式进行关系映射对应,再与系统用户进行关系对应设置,这样用户在使用时,无需再作任何操作平台即可直接根据信息判断出用户请求的目标数据库,简化服务环节。
对上述各类信息的维护,平台具有严格的权限控制,最高级别权限的人员可以对相关信息进增、删、改、查操作,并可以打印相应的信息列表以备对照。
5.2.2. 系统注册
局中心及各分中心的相关应用系统在通过本信息交换平台进行数据交换与共享之间,首先要在局中心通过本平台注册,获得各自的标识及权限信息后才可以通过本平台进行数据交换。
本平台提供的注册方法有两种:平台自动注册和人工注册。 1、平台自动注册
指当平台检测到发出业务申请的系统没有在平台内注册过时,便自动为其注册,在平台内保存此系统的标识码并分配默认访问权限,同时将此信息发送给此申请系统用户,完成注册过程。
2、人工注册
由具体的系统操作人员通过平台提供的人机交互界面维护新的应用系统信息,以获得此系统用户的标识号并为此系统用户分配相应权限,便于系统用户运
行时不必再注册而直接与其它节点进行数据共享与交换操作。系统用户权限分配请参见权限管理相关部分。
5.2.3. 目录服务
平台采用开放式的技术实现信息元的维护操作,在目录服务模块中,平台首先提供一个标准的元数据分类方式,并根据当前水务局数据库内容提供默认的信息元素,在此基础上相关用户可以对目录树进行维护操作。
信息资源目录的管理与建设原则遵照本平台的应用架构模式,以局中心为中心的集中式目录建设,各分中心拥有自己的资源目录,且与局中心形成网状的信息共享与交换结构。目录管理示意图如下:
局中心资源目录树分中心A资源目录水文信息供水信息分中心B资源目录水工信息交交分中心A资源目录树换/共分中心A资源目录水文信息供水信息订阅的资源目录分中心B水工信息被订阅的资源目录分中心B水文信息目录服务主要包括类别维护,用于对元数据进行分级、分类管理,如类别的增删改查及对类别分组设置等;元数据维护指对具体的元数据信息的维护操作,
换/共享交换/共享享分中心B资源目录树分中心B资源目录水工信息..信息订阅的资源目录分中心A水文信息被订阅的资源目录分中心A水工信息 资源目录管理结构
具体元数据属于某个指定的类别,同时对元数据可以设置优先级别;目录索引管理——统一管理目录索引信息。目录服务模块的功能分配如下: 目录服务类别维护目录索引管理元数据维护新增类别修改类别删除类别类别合并分组设置新增信息修改信息删除信息信息移动优先级设置 目录服务模块功能结构图
目录服务功能界面如下:
数据交换平台环境配置创建类别目录服务删除类别权限管理订阅定制参数设置参数设置日志管理保存取消用户操作用户系统用户水文添加信息修改信息删除信息类别代码010200类别名称系统用户优先级别2类别描述使用本平台的应用系统 目录服务功能界面
5.2.3.1. 类别维护
类别维护指对信息按一定规则分类管理,如按局中心数据库分类方式分为水文、供水、水环境、水利工程等方式进行分类或按基础信息、业务信息进行分类,还可分为数据目录、服务目录、应用目录和用户目录,已订阅目录、被订阅目录等,本平台根据实际需要提供若干固定分类,要求用户必须遵循此分类方式进行维护的类别,如用户对象——在这里指可能使用本平台进行数据交换的操作者和系统;消息分类——包括不同类型消息的归类方式、特征码信息设置等。固定分类因其具有固定的特征而在平台中具有个性化的管理和服务与之对应。用户可以根据自己的需要创建新的类别并对其进行维护。
类别维护可分为新增、修改、删除和类别分组几部分功能,其中系统提供的固定类别不能修改或删除。平台根据设置(见日志定制部分),可以记录类别维护的日志。
1、新增
对此模块有权限的平台使用者可以创建新的类别,为类别输入名称及相关辅助信息,系统自动为类别生成ID标识号,此ID标识号在整个平台目录数据中具有唯一性,且按一定的规则生成,类别可以包括子类别,并且系统对类别可分级数有限制(参见其它参数设置部分),不允许无限制的分级。
已订阅目录和被订阅目录属系统根据用户操作信息自动生成的查询、浏览目录。已订阅目录内分别展示当前用户已经从其它节点处订阅的信息内容;被订阅目录指其它节点用户到当前用户登记的订阅情况。当前操作者只能在对已订阅目录内容进行取消订阅(即退订,参见退订部分)操作,不能对被订阅目录进行任何编辑性操作。
2、修改
与新增类别相似,已创建的目录类别名称及描述信息可以修改,但其ID标识不会改变。
3、类别合并
已经创建的多个类别可以合并成一个类别,类别合并包括三个方面:同级类
别可以直接合并,即拖动一个类别到另一个类别文件夹上,系统即会自动合并两个文件夹内的信息元素,同时文件夹名称不变,被合并的类别文件夹消失且被合并的信息元素自动按合并后的编码方式重新编码,同时通过平台订阅记录自动修改其它订阅用户的相应信息的编码;下级向上级合并,首先将下级的信息元素拖到上级目录,使被合并文件夹(类别)为空,再删除之;上级向下级合并,一般来讲,不会有上级向下级合并的情况发生,依据规则,有下级类别的则上级类别没有直接的信息元素,情况发生在一个类别后期又增加子类的时候,首先建立子类别,然后将上级类别的信息元素拖到下子类中即可——系统自动根据编码规则重新为信息元素编码,并同时通过平台订阅记录自动修改其它订阅用户的相应信息的编码。
4、删除
每个类别均有一个启用与否的状态标识,只有未启用的类别可以无限制的删除,一旦该类别被启用,则必须是此类别下面所有的信息元素均处于未启用或已被移走(参见元数据维护部分)的情况下才可以删除。当此类别包含的信息元有一个处于启用状态时,此类别的状态即为启用状态,且此状态不能人为改为未启用,类别在新建成功时,状态默认为未启用。
5、分组设置
根据信息元素可以被订阅访问的级别,平台提供将元数据类别分组的功能,即根据当前的资源目录树,选择若干类别(选中上级目录时,所有下级均为选中状态)归为一组,并为此组命名、编号。一个类别可以同时在多个组内出现,但原则上不允许存在类别不在任何组的情况——平台提供检查漏项功能,由系统检查是否存在尚未被分组的类别资源。便于对系统用户分配订阅内容。
类别分组界面如下图:
数据交换平台环境配置目录服务权限管理订阅定制参数设置参数设置日志管理可供分组的资源类别业务信息水文信息供水信息基础信息水文信息编号01组名水文业务数据组描述全局的水文业务信息,包括实时雨情、水情、蒸发量...保存取消检查漏项 资源类别分组界面
5.2.3.2. 元数据维护
信息元维护指对各分类内应包含的信息元素(元数据)的维护,如水文类中包括日降雨量、时段降雨量、日蒸发量等内容。
基于信息资源目录管理的信息元素维护在清晰描述信息自身含义的基础上,还清楚的描述了信息的存取方法,为后期的数据抽取做好准备。
元数据维护可分为新增、修改、删除、移动和优先级设置几部分功能。平台根据参数设置(见其它参数设置部分),可以记录信息维护的日志。
1、新增
对此模块有权限的平台使用者可以为指定类别添加新的信息元素,输入元素名称及相关辅助信息,系统自动为元素生成ID标识号,此ID标识号在整个平台目录数据中具有唯一性,且按一定的规则生成,信息元素的ID号中包括有所属的类别信息,如某元素的所属类别ID号为0100,则此元素在该类别中是第2个元素,则此元素的ID号为0102。
2、修改
与新增相似,已创建的信息元素名称及描述信息可以修改,但其ID标识不会改变。
3、移动
信息元素(或称元数据)可以由一个类别转移到另一个类别,转移可分为平级转移、向上转移和向下转移,分别与类别维护中的平级合并、向上合并、向下合并相对应。
信息元素转移后,平台自动判断目标类别的编码,然后按目标类别编码生新为信息元素进行编码,并根据记录订阅信息,修改订阅方此信息元素的编码值。
4、删除
每个元素均有一个启用与否的状态标识,只有未启用的元素可以无限制的删除,一旦该元素被启用过,则证明此元素在某个目标数据库内存在该信息,平台会提示要慎重删除。一个元素在平台内被发现有请求使用时,其状态自动变为启用状态,且此状态不能人为改为未启用,新建成功时,状态默认为未启用。
5、优先级设置
每个信息元素都有一个优先级别号,标识此元素在所在类别中的重要程度,便于平台在运行时依此做出优先级判断。——当系统发生资源争用时,可优先处理优先级较高的数据请求。
5.2.3.3. 目录索引管理
目录索引顾名思义即是目录服务部分统一管理信息索引的功能,在此规定固定的编码规则,并对编码的方式、意义有明确说明,当创建新的类别、添加新的信息元素或其它需要生成编码时,即调用此功能,系统根据请求信息自动生成与之对应的ID标识。同时还有废号回收的功能,即当一个中间类别号或信息元素号被删除后,再有新的类别或信息元素生成时,可以使用此号。这样严格控制了目录中所有信息标识的唯一性,同时也最大程度的利用了号码资源。
5.2.4. 权限管理
权限管理主要是对使用本系统的操作者及可以通过本平台进行数据交换及
共享的所有应用系统的访问权限分配与管理功能。功能结构图如下:
权限管理操作者权限应用系统权限角色定义用户维护权限分配权限分配权限修改
权限分配功能结构图
5.2.4.1. 操作者权限
操作者的授权主要指通常意义上的用户与权限的管理,是对指定用户与平台功能的权限对应关系的分配与设置。具体包括角色定义、用户维护、权限分配。
1、角色定义
按系统使用者的预定权限范围将用户考虑分组,每个组对应一个角色,可拥有相同的系统操作权限。
角色定义功能完成角色的性质定义,包括编号、角色名称、权限范围描述等信息。角色定义维护包括角色信息的新增、修改、删除、查询。
此功能只能由系统管理员完成。 2、用户维护
用户维护主要指维护系统的操作者人员信息,包括人员姓名、编号、登录名、密码、单位部门、联系方式等基本信息,同时为用户分配所属的角色,一个用户可以同时拥有多个角色,即拥有多个角色的权限。
用户维护功能包括新增、修改、删除、查询。 此功能只能由系统管理员完成。
用户本身登录平台后,可修改个人基本信息中除编号、登录名称以外的所有
信息。
3、权限分配
权限分配是对指定角色可以访问本平台的具体菜单及功能进行设置分配。其设置后还可以根据需要进行修改。
系统提供默认角色及权限设置,当新增一个操作员后,如没有对其进行角色分配,则采用系统默认分配值操作本平台。
5.2.4.2. 系统用户权限
在这里使用本平台进行数据交换或共享的系统即称为系统用户。应用系统的权限设置主要对目录服务内的相关信息进行分配与设置。具体包括权限分配和权限修改两部分。
目录服务中已提到,系统用户在目录中以一个固定的类别存在,可以使用本平台的所有应用系统均是本平台的系统用户,因此必然要在目录列表中存在(可能是人为注册也可以是自动注册的),且具体的应用系统在目录列表中对应一个具体的信息元素级数据。在目录服务中,也可以为系统用户分组。
1、权限分配
在本模块中,不能对系统用户进行增删改操作——此功能在目录服务中完成,只能对系统用户进行权限分配——当系统用户进行分组后即为用户组进行权限分配,即可以为指定的系统用户(组)分配可以访问的信息资源类别组(包括其它应用系统),这样,该用户就可以向有权访问的用户发出订阅请求信息,从而实现数据接收或发送——只有双方均有权访问对方时,才能实现数据双向交换。
同操作者权限管理类似,平台对系统用户提供默认权限设置,当一个新的应用系统通过本平台自动注册后,即享有本平台的默认系统用户权限,要改变此系统用户的权限,可以对该应用系统进行分组或直接分配系统使用权限范围。
系统用户组权限分配界面如下:
数据交换平台环境配置目录服务权限管理订阅定制参数设置参数设置日志管理系统用户(组)系统用户水文管理组供水管理组资源信息组编号组名01水文业务数据020304水文基础数据供水业务数据水工业务数据保存查询资源组组描述…………取消 系统用户组权限分配界面
如界面所示,在为系统用户(组)分配权限时,还可以进行批量分配——当几个系统用户(组)有相同的权限范围时。
2、权限修改
权限修改即是对已建立并分配权限(包括默认分配)的用户或用户组的权限进行修改、重新分配的过程。
权限修改时,当用户(组)的权限范围缩小(这里指原来有的权限修改为没有的情况)时,平台自动判断此用户(组)是否已经订阅了被撤消权限的信息,如果有则提示操作者用户此信息已经被订阅,若强烈撤消此项权限内容,则本系统自动删除此用户(组)对该信息的订阅信息及被订阅方的被订阅记录,否则直接修改权限。
5.2.5. 订阅定制
订阅定制是本交换平台的核心功能之一,主要指订阅方向被订阅方提出订阅请求,经对方允许后获得订阅信息的先期预订过程。
系统提供人机交互界面,用户通过界面访问、浏览可以订阅的对方信息,并
定制订阅信息。订阅信息维护包括校验数据、订阅、退订三部分。
订阅定制的功能结构图如下:
订阅定制查询订阅校验数据订阅退订全局浏览条件查询 订阅定制功能结构
校验数据是指在具体订阅资源之前,首先检查、校验订阅方与共享方数据的同步性,不同步则通过本平台进行数据同步,以便达到数据的一致性。
退订是指订阅方取消订阅,删除已经定制好的订阅信息并发送退订消息给共享方不再订阅的过程;
定制与此相反指开始订阅对方的共享信息。
另外系统提供基于订阅的信息浏览与查询功能,可以查询已订阅的信息,也可以有针对性的查询当前网络中可以订阅的其它节点的共享信息。查询条件可以是信息类别、节点名称——这些基础信息均是通过点到点的数据同步得到、时间等。
订阅定制总体功能流程图如下:
订阅资源查看订阅资源双方校验删除订阅资源订阅资源查看订阅资源订阅资源获取共享方的共享的资源删除订阅资源选择要删除的订阅资源选择填写订阅内容资源双方校验数据选择进行校验的共享方校验程序是否同步双方删除订阅记录数据双方保存订阅记录数据不一致,进行同步提示数据完全一致同步双方配置返回查看界面返回查看界面返回查看界面返回浏览界面操作 订阅流程图
5.2.5.1. 数据校验
本平台提供两种数据校验方式:系统自动定时校验和人工操作校验。 1、自动校验
自动校验是通过系统设置校验节点、频率或时间参数后,平台在运行过程中依据参数设置对指定对象进行数据校验,自动同步的过程。不需要人为操作。
2、人工校验
人工校验是指由操作员根据需要对指定节点的数据进行校验同步的过程。人工校验没有时间、频率的限制,由操作者根据需要而定。
无论通过哪种校验方式,平台自动记录校验记录,记录上次校验时间,便于
下一次数据校验时的参照与比对。
5.2.5.2. 订阅
订阅即指订阅定制,是用户通过系统界面浏览其权限范围内的其它用户的共享资源,并对共享资源进行选择发送订阅请求,最终获得订阅资格的过程。
订阅的操作流程如下: 进入订阅界面浏览可以订阅的资源选择订阅内容提交请求受理订阅请求否允许订阅否是退回请求确认请求取消订阅保存订阅信息结束 订阅流程图
图中淡粉色框是订阅方的操作内容,淡蓝色框是共享的操作内容,订阅过程实际上包括上图整个过程。 本平台自动记录订阅方发出的订阅请求信息,包括请求时间、共享方、请求内容、请求结果等相关信息,并提供随时查看的功能供订阅方删改。 订阅定制界面如下: 数据交换平台环境配置目录服务权限管理订阅定制参数设置参数设置查询日志管理订阅可供选择的共享信息用户A水文信息时段降雨量供水信息用户B水利工程信息大坝测压管 订阅界面
5.2.5.3. 退订
退订与订阅的过程刚好相反,是指已经订阅成功的信息,由于某种变化或需要,而由订阅方向共享方发出信息,提出取消订阅的过程。
退订的操作流程如下:
进入订阅界面浏览已经订阅的资源选择退订内容提交请求受理退订请求退订成功,删除订阅记录结束 退订流程图
如图所示,退订过程中,一般只要订阅方提出申请共享方即取消对此订阅方提供相应的订阅信息。
5.2.6. 日志定制
日志管理分为三个方面:记录内容管理、文件时间设置、日志查看。结构图如下:
日志管理记录级别设定成文类型设定日志查看全局浏览条件查询结果输出
日志管理功能结构
1、记录内容
本平台提供完备的日志服务功能,考虑到用户的不同需求及灵活性,同时考虑到系统长期运行时输出日志对系统性能的影响,本平台将需要记录日志的内容按对系统响影的程度分为五级,用户可以选择指定级别记录日志信息。
日志内容分级情况表:
第一级 系统必须输出的日志 如:系统启动、停止、系统不能正常运行的错误等 第二级 由于环境配置文件不正确而引发的错误 第三级 由于订阅数据配置文件不正确引发的错误 第四级 系统已经考虑到的其它可估计的错误信息 第五级 每一步运行的日志记录 包括所有正常运行的日志,如数据正确读取,数据正确保存等内容 如:配置文件不能连接数据库,不能连接网络等错误 如:由于数据配置文件不正确,在读取数据、整编数据、保存数据时所引发的错误内容 如:数据转换不正确,数值不能为空等 2、成文时间
本平台在为需要记录日志内容分级的同时,还可以对日志文件时间进行设置,即用户根据自己的需要可以设置每小时、每天、每月、每年一个日志文件——这里当然是单选,即只能选择一种。日志文件可以人为中止,中止时记录成一个文件,然后可以更改日志文件的成文时间。
如上所述,本系统充分考虑了用户对日志内容、日志文件大小方面的个性化要求,用户可以根据自己的实际情况权衡日志应记录的内容和文件大小,从而达到最优效果,在确保系统的正常运行的同时方便后期查看运行情况,为分析系统、查找原因提供适当的参考信息。
3、查看日志
用户可以在本系统内查看日志信息,可以输入查询条件选择性查看日志信息。从而从不同角度、不同方位查看分析当时的系统及环境情况。对日志查询结果还可以输出打印出来,其输出格式可为EXCEL和WORD文档以及数据报表。
日志查看总体流程图如下:
开始选择查看日志设置查看日志范围用户可以设置以下条件筛选日志:1、交换单位2、日志级别3、事件发送源4、日志记录时间根据范围读取日志设置条件筛选日志查找符合条件的日志以列表形式按时间倒序显示选择日志结束
日志查看流程图
5.2.7. 安全管理
安全管理提供完备的安全策略保护本平台及数据的安全。本平台安全管理主要从三个方面考虑:
1、用户方面
有严格的权限分配与控制机制——权限分配部分已有详述。 2、数据方面
采用独特的加密方式进行加密、封装再传输——参见数据交换服务之封装解析部分。
3、网络监测方面
平台提供实时网络监测部件,用于实时(间隔时间可设置,见其它参数设置部分)探测当前的计算机网络状况及数据流量,当发现网络故障时,自动记录网络故障出现的时间及可能的原因,并中止当前的网络通讯作业,等待网络恢复后继续执行。当监测到网络故障发生一定时间间隔(允许的网络超时时间,见其它参数设置部分)后,便以GSM的方式通知当前正在等待网络信息回复的用户,网络发生故障,并记录被中断的作业信息。
本平台网络监测采用定时探测的技术实时监测网络状态,同时当网络出现故障时(断网或超时),以GSM无线网络为依托,采用GPRS(General Packet Radio Service,通用分组无线业务)技术实现信息的无限制发送,确保通信畅通,为等待回复的用户及时提供当前状况,便于用户尽早采用备战措施。此功能借鉴目前已在使用的水务实时通技术方案实现。
5.2.8. 其它参数设置
支持平台正常运行的相关参数设置,具体包括:
✓ 监测网络的时间间隔:多少秒探测一次网络连接状态。 ✓ 是否支持断点续传:即可否支持传输被中断之后的续传。 ✓ 网络超时时延:探测到多少秒连续的断网状态后即认为网络中断,发送断网信息给用户。
✓ 传输数据包的大小:数据传输数据包的大小限制,以K字节为单位。 ✓ 可建目录级别:系统可以创建的服务目录级别,包括元数据一级。 ✓ GSM发送内容:网络中断、严重错误、共享资源被删除。 其它参数设置。
5.3. 数据交换服务
本模块描述中,5.3.4发送管理
5.3.8数据保存是一个完整、粗略的数据
交换全过程,其中封装解析是封装与解析两个过程,消息管理与队列管理功能贯穿其中,大体过程如下:
封装发送接收解析整编保存 数据交换过程
信息发送方的数据在发送前,首先进行加密、压缩并按规则封装成一个一个的数据包,然后进行发送;接收方收到信息后,首先对数据进行初步校验、解析在确定数据无误后按规则整编,最后保存到相应数据库内完成数据交换的一个单方向传输过程。
5.3.1. 数据交换流程
数据交换服务是本平台的核心业务,系统管理模块的一切功能都是为数据交换服务的,数据交换服务长期驻留内存并运行,实时完成网络内各用户、各系统之间的信息交换与共享。
数据交换指共享方与订阅方之间的信息互通和数据交换。一个订阅方可以订阅多个共享方的共享数据,同理一个共享方也会受理多个订阅方的订阅请求。实际上产生数据交换的过程就是共享方向订阅方发送数据的过程。
数据交换流程图如下:
资源共享方资源订阅方1资源订阅方2读取资源配置信息轮询读取数据接收数据封装数据....分发数据接收数据接收数据整编数据保存数据接收返回结果封装返回结果接收返回结果....记录返回结果记录返回结果 数据交换流程图
如图所示,当订阅方订阅了信息后,共享方轮询读取数据,并对数据进行封装,然后发送给订阅方,订阅方接到数据后,首先对数据进行验证、解析、整编最后将合法数据保存(如果验证数据不合法则丢弃并发送错误信息给共享方,要求重新发送),并封装确认信息返回给共享方,共享方在接到回复后,记录订阅概要信息(或重新读取数据进行发送),完成数据交换过程。
5.3.2. 消息管理
本平台提供消息管理机制,统一管理经过平台的一切消息。平台采用特征验
证码的方式为每条消息加注特征码,同时总结各用户端传送消息的特性,分析消息的归属类别,根据消息的特点对消息进行分类(如发送、请求、回复、接收、报错等)、整理、预排序,准备使用各自的通道进行传输,避免消息混乱的状态发生。消息的归类规则及特征码信息可以在目录服务中进行维护。
本管理功能不提供用户交互界面,而是以内部进程的形式存在。
5.3.3. 队列管理
当通过本平台的请求较多时,如果不对各类消息加以控制会产生资源争用或并发冲突的现象,并且可能会出现优先级较高的请求反而等待时间过长现象,因此本平台采用有效的队列管理手段根据消息本身的特性优先级等信息调动、排列各进程,使所有请求有序高效的得以执行,从而最大程度的优化系统。
5.3.4. 发送管理
本交换平台在处理各类数据交换与共享请求时,会产生各种信息及数据的发送操作,平台依据发送数据包的特征标识找到接收方,并首先探测网络状况,许可时即进行发送操作,并自动记录发送日志(根据日志记录设置情况而定)。
发送流程图如下:
待发送的信息或数据验证接收方身份N探测网络状况超过时延限制Y计时器加1N通否Y发送信息GSM发送信息记录日志结束 发送数据流程图
发送信息内容不仅限于各类交换的数据信息,还包括通讯双方的交互消息等。GSM信息发送发生在计算机网络不能连通的情况,GSM可发送网络中断信息、错误报告信息及资源删除消息——依据参数设置情况而定。
GSM信息发送采用在平台中集成无线通讯技术,当计算机网络不通时,与GSM短信无线网络平台相连接,依托局中心已建的PDA技术平台进行发送信息的方式。
5.3.5. 接收管理
与发送管理相对应,本平台在接收各用户传送过来的信息时,首先验证数据包的有效性,有效则接收下来进入下一步处理,否则丢弃此包同时发送错误信息给发送方,并记录相关日志(根据日志定制部分的设置而定)。
接收管理的流程图如下:
待接收数据验证数据有效性丢弃数据N是否有效Y发送回复信息接收数据记录日志结束 接收流程
如图所示,当信息端口有传来的数据时,首先根据数据包的特征码进行初验,有效则接收数据否则丢弃此数据包,并发送错误消息(或重发消息)给发送方要求重新发送。
5.3.6. 封装解析
5.3.6.1. 封装
封装是指数据在发送之前进行的加密、压缩、封装过程。平台对准备发送的数据按一定规则加密压缩后,进行封装,并且一个数据包的大小是固定的(参见其它参数设置部分),当欲传送数据大于规定包的大小时,系统自动将数据分成多个包进行传送,并记录各个包之间的先后关系,同时在包中加入明显的可供验证的标记。
封装流程图如下:
轮询读取待发送数据有无数据有判断未打包数据大小等于无数据小于与规定的数据包大小对比对数据进行加密、压缩数据打成一个不大于规定大小的包加入相关标识结束
封装流程图
在数据加密、压缩之前,平台采用轮询读取数据的方式实现数据的循环读取,本平台采SLEEP等待的方式进行数据读取,即每读取一次数据后,等待一段时间再进行下一次数据读取,这样避免了由于多线程同时争用系统资源而产生堵塞。并发与轮询技术的结合使用有效、充分的利用了系统资源,使得平台具有较高的数据处理能力,为支持频繁、大数据量的数据交换与共享提供了可能。
5.3.6.2. 解析
解析即是接收方在接收到对方传来的数据包后,对数据包进行规则解密、验证数据的有效性,通过后即可整编保存数据。
解析数据包的流程图如下:
接收的数据包对数据进行解密、分析N丢弃此包合法生成回复消息Y准备发送加入合法标记结束 解析流程图
5.3.7. 数据整编
数据接收并经解析后,要根据数据特性标识进行整编、再分析、归类、关联计算及相关转换处理,然后准备保存。数据整编主要指对经过解析检验的数据进行归类、按数据类型对应关系进行转换处理的过程。
数据整编流程图如下:
开始获取解析后的消息数据获取一个资源的数据读取此资源整编类型判断数据类型?按时间每天整编数据……返回数据整编结果结束 整编流程图
5.3.8. 数据保存
整编无误的数据即可以保存到目的数据库的相关表内,完成数据交换的整个流程,并记录相关日志(依据日志设置而定)。
数据保存处理流程图如下:
开始获取要保存的数据获取数据资源内容根据要求整编数据日期格式根据要求数据库生成相应的slq语句根据要求数据库连接类型生成数据库连接执行Sql语句完成数据保存结束
数据保存处理流程
5.3.9. 其它相关服务
本平台还提供一些必要的其它方便性的服务功能,此模块也是本平台预留的可维护增加的开放式接口。
6. 项目实施安排
本项目工期安排如下表:
因篇幅问题不能全部显示,请点此查看更多更全内容