基于Web Services技术的农情信息调度系统的研究与开发
2009-03-06周凯朵云峰
周 凯 朵云峰
[摘 要]本文分析了Web Services技术在解决异构系统集成中的优势,在此基础上开发了一个基于Web Services技术的市级农情信息调度系统,并对该系统进行了详细的介绍。
[关键词]Web Services 农情 信息调度
作者简介:周凯(1963-),男,副教授,研究方向:计算机软件开发研究与教学。
一、引言
农情信息调度是对当地农情信息收集、整理、分析、发布,对上级管理部门准确反映各地政策落实、工作进展、生产动态、形势预测等重要行情、民情和灾情,对下级部门提供政策、生产、市场、品种、技术、经验等信息服务。开发适应农业生产的市级农情信息调度系统,提供准确、快捷、灵活的采集手段和强大的查询功能,实现农业信息统计、生产报表、防灾减灾信息化管理和信息共享,提高农情信息管理的实效性和可靠性,显得至关重要。
二、关键技术
(一)Web Services技术
Web Services技术是为解决在Internet环境下,松散耦合的Web Services之间进行相互调用、互相集成而设计的技术框架。主要包括用于进行服务描述的Web Services描述语言(WSDL);用于服务调用的简单对象访问协议(SOAP);用于用户服务的发布和集成的统一描述、发现和集成规范(UDDI)以及XML(可扩展标记语言)。Web Services体系结构主要由三种角色和三种操作组成。角色主要有服务提供者、服务注册中心、服务请求者。操作主要有发布/取消发布、查找、绑定。这些角色和操作一起作用于Web Services构件、Web Services软件模块及其描述。在典型情况下,服务提供者提供可以通过网络访问的软件模块。服务提供者定义Web服务的服务描述,并把它发布到服务请求者或服务注册中心。服务请求者使用查找操作从本地或服务注册中心搜索服务描述,然后使用服务描述与服务提供者进行绑定,并调用相应的Web Services实现。
(二)数据访问技术
通过 NET Framework 数据提供程序对 SQL Server、ODBC、Oracle 和 XML 等数据源以及通过 OLEDB 和 XML 公开的数据源提供一致性的访问,同时,.NET下的数据提供程序全面支持分布式的通信应用。数据共享使用者应用程序可以使用 ADO.NET 连接到的数据源,并检索、处理和更新所包含的数据。
配合NET Framework 提供的数据库连接,Data-Set XML 文档类型与后端管理的数据结构之间提供了一种映射机制,将不同数据库中的字段映射到各个元素和属性类型,或者将XML 文档中的各个元素及属性映射到指定的数据库字段,实现数据的转换。作为Data-Set 固有的序列化格式,XML 和XML构架则为远程客户端之间来回传输Data-Set 内容提供一种方便的格式,使得Data-Set 成为层间数据移动的媒介,方便异构系统间的数据传递。
(三)安全控制技术
农情信息调度不是开发类似网络支付平台或者是在线银行,系统内传递的数据只需要不让“外人”看到,不需要“预防抵赖”这样的保证。因此,农业信息调度系统的安全,主要是指保密性、完整性、授权三个方面。
Web Services 体系结构在最常用的传输协议 HTTP 上使用 XML/SOAP,因此,它允许以纯文本形式交换信息。但是第三方可以很轻松地截取并解释这些信息。但.NET 环境下的 Web Services 由 IIS 提供,在系统环境下,可以使用 IIS 的内置安全特性。支持 HTTP 的 SSL 能够为 HTTP 中传输的数据提供保密性和完整性。通过启用客户端 X.509 证书(在 SSL 协议中是否使用客户端证书是可选的)可以提供预防抵赖服务。一旦启用 SSL,通过相关连接发送的所有数据都将加密并使用签名。IIS 提供基本身份验证、摘要式身份验证、集成 Windows 身份验证 (NTLM/Kerberos) 、 X.509 证书等多种身份验证机制。对于提供 Web服务的特定目录,可以启用其中任何一种身份验证机制,相应地客户也可以提交相应证书,并通过 IIS 验证。同时,IIS 中需禁用匿名访问。
三、系统架构
基于Web Services架构的市级农情信息调度系统设计开发思想如下:
(一)系统所有数据存储在市级服务器上(包括县、乡级),由市级人员统一管理。(二)系统对外的主要接口以Web Services的方式提供。(三)系统客户端以windows form应用程序表现给用户,以Web Services访问者运行于工作站上,成为系统的一部分。(四)应用程序服务器是一个逻辑单元,与Web Services服务器位于同一个物理机器上,这个逻辑单元提供市级局域网内容管理使用。(五)系统自顶向下共分为四个功能层。系统各层功能描述如下:
1.应用层:是系统的最顶层,为外部用户提供统一的查询接口,具体表现为windows form应用程序,或是Web浏览器。
2.业务层:是业务逻辑的表现层,以可远程调用的对象或组件的形式存在于服务器上。
3.逻辑无关层:这个层次的划分,类似于RUP中的中间件层。该层的内容表现形式与业务层相同,但与业务逻辑无关。
4.数据层:该层内容最直接的表现形式就是数据库系统,如SQL Server、Oracle等。
四、系统功能
市级单位农情调度工作采用市、县、乡分级管理模式,市级部门向所属下级部门下达任务,审核并汇总报数据,向省级部门上报数据。
市级农情信息调度系统主要8个管理模块完成。系统各管理模块的功能描述如下:
(一)组织管理模块。管理本级部门和人员,可以在权限范围内进行增、删、改操作。(二)权限管理模块。顶级管理部门可以分配下级部门所拥有的权限,也可以在自己的权限范围内允许用户调整本级其他人员的权限。(三)系统管理模块。提供系统参数设置入口,比如IP地址、端口号等,还包括本级系统运行方式等。(四)发文管理模块。上级可以向下级发送文字材料,下级按照上级的要求上报文字材料。(五)统计分析模块。对通讯数据、任务调查数据、发文数据、上报数据进行统计分析。(六)通讯模块。提供系统内部外部人员互动信息、通讯簿管理、通讯组管理以及消息管理功能。(七)任务管理模块。利用统计分析模块对调查任务进行各种统计分析,支持节点维护任务。(八)系统更新模块。新的程序版本产生,只需要在总服务器上发布程序,其他终端登陆时,自动检测更新,并下载自动安装。
五、结束语
Web Services技术在解决异构数据库统一调度方面提供了完善的解决方案。基于Web Services技术的市级农情信息调度系统,实现了农业信息统计、生产报表、防灾减灾信息化管理和信息共享,为现代农业生产条件下,农业管理部门决策提供了科学的依据。
参考文献
[1]柴晓,梁宇奇, Web Services技术、架构和应用[M]电子工业出版社2003
[2]丁月华,杨敏,基于XML的异构数据源集成与交换的实现[J]计算机应用与软件2006
[3]李安渝,Web Services技术与实现[M]国防工业出版社2003