基于CXF框架的可配置化企业内容管理平台Web服务(通讯)
侯斌,涂红兵,王云福
(中广核工程有限公司,广东深圳518172)
摘要:在对企业内容管理平台Web服务的主要业务以及实施技术方案进行比较分析后,提出通过表接口与CXF框架结合来构建企业内容管理平台Web服务的方案,并在该方案的基础上,设计了Web服务的配置化模块来增强其可扩展性。该方案兼顾了业务上对于Web服务时效性以及稳定性的要求,同时减少了由于系统业务变化而导致的Web服务的频繁变更。
关键词:CXF框架;企业内容管理平台;Web服务;可配置化
中图分类号:TP302 doi: 10.11959/j.issn.1000-0801.2016140
1 引言
随着企业信息化水平的不断提升,在企业生产和管理过程中产生的结构化和非结构化数据量也随之显著增长。这些数据是企业最为重要的资产之一,对于企业的发展及创新有着重要的意义,因此企业通常都会将此类数据归档至企业内容管理平台中进行统一的管理以及利用。作为企业的数据中心,企业内容管理平台会和众多的企业生产管理信息系统进行数据交互,如何为这些外部信息系统建立高通用性、高实时性、高扩展性和高可靠性的接口服务,成为企业内容管理平台所面临的一大挑战。基于Apache CXF开源框架构建的Web服务能够方便地与其他如Spring这样的轻量级框架结合使用,提供丰富的接口及方法,结合配置化Web服务设计,就能够成为企业内容管理平台Web服务的廉价且高质量的解决方案。
2研究背景及现状
设计文档管理系统(design document managementsystem,DDMS)是中广核工程有限公司设计院建立的企业内容管理平台。作为企业的数据中心,它与设计院的设计生产管理平台、公司OA( office automation)、UPM (unifiedprocess management), SAP(systems applications, and productsin data processing)等众多系统有数据交互。数据接口关系如图1所示。
从图1可以得知,最初的接口服务架构方式至少存在以下几点问题:与各系统的服务分散,难以集中管控;大量每日定期同步服务,数据实时性较低:无可配置化模块,当业务变更时,开发周期长:缺少审计模块,错误数据难以跟踪,可靠性低。为此,本文提出基于CXF框架的企业内容管理平台统- Web服务构建方案,结合以可配置化的模块设计,以实现平台Web服务的高通用性、高实时性、高扩展性和高可靠性。
3 Web服务整体设计方案
考虑到企业内容管理平台的业务特点,它所提供的Web服务通常要考虑并解决以下4个关键问题。
·通用性问题。企业内容管理平台作为企业的数据中心,一般会与很多外部系统存在数据接口。从系统开发和运维的角度出发,很难为每个系统的业务都定制开发单独的接口,因此企业内容管理平台所提供的Web服务必须具有良好的通用性,要对具体的业务进行抽象,并提供标准的接口给不同的外部系统使用。
·实时性问题。即数据传送的实时性。作为数据交互的通用方式,企业内容管理平台Web服务有着大量的电子文件传递的任务,它必须能够提供足够大的服务吞吐量,更快地完成数据交互。
·扩展性问题。企业管理的业务需求是不断变化的,一个好的企业内容管理平台Web服务必须能够快速地支持需求的变化,但仅仅通过代码变更来支持需求的变化,效率较低,且周期较长,无法满足快速的业务需求变更。
·可靠性问题。数据交互中最重要的就是保证其可靠性。各系统数据的差异,软件、硬件或网络环境问题都有可能造成在外部系统与企业内容管理平台在进行数据交互过程中产生错误。只有能够快速地发现并处理这些错误,才能保证数据交互的可靠性。
本文基于CXF框架,结合设计文档管理平台标准(API-documentum foundation classe,DFC),首先提出通过配置化的方式构建企业内容管理平台Web服务。
3.1 系统结构设计
企业内容管理平台Web服务的重点业务一般包含取号、归档、数据回写、查询、作废、授权等,其中归档业务由于存在电子文件的传递,消耗时间长,消耗计算机资源多,如果直接采用Web服务进行电子文件的数据传递,会存在大文件传递超时、程序内存溢出等性能问题。为保证服务的实时性和稳定性,在Web服务设计中,针对归档业务采用异步的方式,即各业务系统上报的归档数据首先保存在企业内容管理平台Web服务的表接口数据库中,然后再由归档业务组件从表接口数据库中取数据并归档到企业内容管理平台中;对于其他消耗资源少、响应较快的业务,采取同步的方式。设计文档管理平台Web服务的整体系统结构设计如图2所示。
各模块的功能说明见表1。
3.2系统框架
为保证Web服务的可扩展性,企业内容管理平台适合使用轻量级的框架用于构建其Web服务。同时,考虑到系统的结构清晰及可维护性,企业内容管理平台Web服务采用MVC设计模式,层次划分为:表现层、控制器层、业务逻辑层、数据访问对象(data access object,DAO)层、领域对象(domain object)层。采用3个开源框架:ApacheCXF、Spring Framework、Hibemate.
系统整体技术架构如图3所示。
各功能层次的说明及设计思路见表2。
4 Web服务配置化设计方案
根据设计文档管理平台Web服务业务梳理出以下可能通过配置化实现的业务,包括授权业务、取号业务以及数据回写业务。配置化设计的基本思路是设计配置规则表,将数据的授权规则,取号规则和数据回写规则写入数据库中。程序仅实现各业务逻辑的通用部分,具体某项目、某个类型的授权、取号或回写规则,都通过读取数据库的配置映射到具体规则,然后执行对应的逻辑代码。以下通过授权业务和数据回写业务为例,说明设计文档管理平台
Web服务配置化设计方案。
4.1 授权业务配置化
授权业务就是按照所归档文档的类型和数据条件,为其指定对应的ACL_ domain以及ACL_ name的业务,对于所有类型,都会给定默认的ACL_ name以及ACL_ domain。对于有特殊权限要求的类型和数据条件的文档,单独配置ACL_ name和ACL_ domain进行授权按业务的指定。
授权配置保存在数据库中。授权配置包含两个表,一个是权限规则主表(data_ ACL_ apply_ rule),保存ACL名称及域名规则和文件类型及项目条件,见表3。另一个是权限规则匹配条件表( data_ ACL_ apply_ cond),保存规则的适用数据条件,见表4。
规则匹配过程如图4所示。
4.2数据回写业务配置化
数据回写业务就是依据数据源提供的关联数据信息,找到文档系统中已经归档的数据,将指定信息反写至目标文档的业务逻辑。现设计文档管理平台数据回写业务如下:Work Ready工程函件回写WR渠道号以及WR日期字段至工程文件:DRCS工程函件回写DRCS渠道号至工程文件;交付函件回写对外交付渠道号至工程文件。
回写配置保存在数据库的data_ rewrite_ rule表中,见表5。
数组的各个值之间以分号“;”分隔,使用反写规则进行数据回写的业务逻辑如图5所示。
5解决方案的应用
综合上述基于CXF框架的可配置化企业内容管理平台Web服务构建方案的研究,设计出的设计文档管理平台统- Web服务(design document unified data service,DUDS).已经投产使用。目前平均每月处理各类型文档服务请求超过5万次,其服务响应时间较原来的服务有了极大的提高,耗时最长文档的归档请求,在2 min以内亦可处理完毕,其他业务请求均为实时响应。另外,服务的稳定性得到了极大提升。加之配套的文档监控系统,可以实时监控并处理问题数据,使得设计文档管理平台接口服务水平极大地提升,同时降低了系统的运维成本。
6结束语
本文所研究的基于CXF框架的可配置化企业内容管理平台Web服务构建方案,从解决大型企业内容管理平台中大量的接口服务的难点出发,提出通过CXF框架与其他轻量级应用框架结合的方式,同时附加配置化模块设计的技术方案,提高了Web服务的通用性、实时性、扩展性和可靠性。目前系统已经投产,运行效果良好。
随着数据规模的增长以及外部接口系统范围的进一步扩大,企业内容管理平台Web服务后端硬件环境架构可能成为新的系统瓶颈。通过负载均衡方案分散前端Web服务压力和通过虚拟化或分布式部署等技术为Web服务后端提供更加稳定可靠的架构也将具有十分重要的意义。基于本文现在的工作,未来的研究方向将会是Web服务前端程序设计优化和后端硬件架构优化的系统整体架构方案。