分布式业务的协同代理服务层设计与应用

2012-05-11 00:45龚艳顾国强王占宏
微型电脑应用 2012年5期
关键词:代理服务办案组件

龚艳,顾国强,王占宏

0 前言

本文以上海市公安局“网上办案”平台的建设工作为例,说明中间层的设计思路和实际应用效果,以此提出分布式业务、集中式数据库系统的协同代理服务层的模型和设计方法,并对照实际应用效果予以验证本文提出的设计模式的高效性、可靠性和安全性。

1 协同代理服务层设计

1.1 技术结构分析

公安“网上办案”平台(以下简称“平台”)中的案件办理业务主要由接报、行政案件和刑事案件办理等流程组成,每个业务流程由各不同业务职能单位负责。由于各警种的职责、业务规范以及相应的业务数据标准都不相同,同时,加之公安部门需要对案件数据信息进行统计和挖掘,所以“平台”对各类案件及过程的数据标准要求非常高,以便能够统一集中存储并进行关联分析。因此,“平台”需采用“数据库集中、应用模块分布式部署”的总体设计原则。

“网上办案”平台采用中心数据库模式,在通常情况下可选用面向服务架构(SOA,Service-Oriented Architecture),同时该平台属于业务流程管理(BPM,Business Process Management)类的事务处理系统,该平台还具有跨部门、跨业务、跨系统的信息交换和共享功能,故又可归入分布式系统(DS,Distributed System),综合上述3个方面的因素,该平台协同代理服务层须具有SOA、BMP和DS等各项特征功能。

SOA架构最适合面向服务类型的软件集成,而该平台主要任务是构建业务流程,其中最复杂的是统一协调各自相对独立的应用模块即分布式软件组件的运行,因此,在平台协同代理层设计过程中需满足系统的几个特性:(1)系统的安全性,公安案件涉及的均为敏感信息,数据的访问权限和存储安全是前提条件。(2)分布式软件组件的耦合敏捷性,服务的松耦合设计可以提供系统应变的敏捷性,但给业务建模和服务划分带来不确定性,如何兼顾平台效率与灵便是设计的重点。(3)BPM的集群调度与监管,调控设计主要包括监控指令的转发、内存映射文件的通信、数据存储的结构和优化及系统同步机制等内容。

基于以上对“网上办案”平台的业务需求和技术结构的分析,本文提出一种基于集中式中心数据库的协同代理服务层模型的设计思路。这套服务层不仅提供了实现和规范不同应用对同一数据库的数据访问及管理功能,还共享了各应用模块需要的公共功能。在统一的技术标准和业务框架下,实现一个纵向贯通、横向集成、资源共享的平台,支撑了案件网上办理的全过程。

1.2 系统架构设计

传统分布式系统采用独立组件架构模式,系统由“表现层-业务逻辑层-数据层”组成,信息的共享与交换通过数据抽取汇集到数据资源库的方式来完成,具体的“网上办案”平台传统技术框架,如图1所示:

图1 传统三层架构示意图

上述传统的3层技术架构虽然满足能业务需求,但需要各职能部门分系统独立建库,再由数据交换后存放汇集到资源库中,由此将产生信息共享效率低的问题;同时由于各业务中间层相对独立,存在相同功能重复开发、无法实施业务的协同作业等问题。针对传统3层架构存在的缺陷,本文改进设计了具有协同代理功能的服务层技术架构。

改进设计的分布式业务协同代理服务层技术框架以面向服务架构(SOA)为基础,以提高“网上办案”平台的应变敏捷性,并针对SOA架构的不足,本文在SOA架构中嵌入了业务流程管理(BPM)的事务处理组件,数据访问和消息管理等模块。针对公安“网上办案”平台各业务独立应用而改进的三层结构技术示意架构,如图2所示:

2.5 两组患者术后并发症发生率比较 两组患者术中均未见盆腔器官损伤发生。两组患者术后并发症发生率比较差异无统计学意义(χ2=0.519,P>0.05)。见表6。

图2 改进的三层结构技术架构示意图

从图2可以看出,改进的“网上办案”平台技术架构与传统架构的区别是,在中间协同代理综合服务层中,不仅融合了数据服务、业务流程协同等功能,还共享了各应用模块需要的公共功能,以满足分布式应用的业务需求。

1.3 协同代理层组件设计

在“网上办案”平台的协同代理服务层中,主要由数据库访问管理、消息管理、配置管理、公共服务管理和系统管理等功能组件构成,具体示意,如图3所示:

图3 协同代理服务层组件模块图

(1)数据库访问管理:分布式业务应用模块对集中式中心数据库的访问与独立系统相比,各并行事务流程生产的数据对数据库的存储和响应提出更高的要求,这就需要服务层具有对中心数据库进行高质量管理的相关功能。本文设计该功能组件主要一是针对人、案、物等核心数据进行访问管理功能,在日志中详细记录每次访问情况,包括操作类型、子模块、访问描述等;二是针对用户、权限、流程的控制功能;三是根据业务实现对访问中心数据库的操作进行封装的同时,还对中心数据库访问操作情况进行了实时的监控,同时保证数据的安全性和数据库的稳定性。

(2)消息管理:通常系统的消息管理主要实现各职能角色的工作提醒和业务模块间的消息传递,而在分布式业务的服务层中其除了完成上述功能外,还需要实现本平台与其他系统间的消息传递或共享。在本文中,消息机制的设计是平台能否正常、有效和协同工作的关键,这与系统的配置管理是密切相关的。

(3)配置管理:以SOA架构为基础的分布式系统,如何克服传统SOA架构的缺陷,提高系统平台效率,其关键是BPM如何依据业务需要进行灵活配置。在“网上办案”平台实际应用中,根据各应用业务模块的优先级,通过可视化的配置工具,实现了用户自定义配置各应用模块接入及并发访问中心数据库的方式、路径等参数。

(4)公共服务管理:为了提高系统的效率,降低开发成本,增加系统的安全性,本平台为各业务应用模块提供了统一访问接口,实现了PKI/PMI的统一管理,包括电子签章,与GIS系统的无缝联结,短信平台等外部接口,及各类案件及人员编码的唯一性产生等平台公共服务功能。

(5)系统管理:该组件主要包括平台的后台管理功能,如平台的用户、角色权限管理,数据字典的维护,异常数据的处置,与其他系统的数据请求与响应情况监控,以及对中心数据库访问安全的监管等功能。

1.4 关键点设计

上海公安“网上办案”平台上运行着多个业务应用模块,随着业务协同需求的不断扩展,对应用和服务的需求也在不断增加。“网上办案”平台是公安系统的核心业务平台之一,关系到全局民警整个办案流程运作,因此“平台”需要满足7x24小时运行的高可靠性,其中如何实现在线热部署和保障服务的稳定运行是设计“协同代理服务层”的关键点。

(1)在平台的运行过程中,如何在不重启协同代理层服务器的情况下,实现“服务在线热部署”,即在线增加或调整业务服务组件,使业务组件之间互不干扰,同时保障平台的7x24小时顺畅运行。本文提出可以通过对异步文件的收集和分析机制,采用分步实施方法以实现对代理服务层的组件更新,旨在不断扩展系统功能的前提下为用户提供持续稳定的系统服务。在左侧“非热部署模式”下,当需要调整某服务组件时,整个协同代理服务层(阴影部分)需要重启,所有服务被中断;而在“热部署模式”下,通过异步文件的收集和分析机制,服务层依次调整相应的业务组件(阴影部分),其他服务组件并不受影响,如图4所示:

图4 在线热部署与非在线热部署模式对比图

(2)在高并发用户登录的情况下,协同代理服务层各个服务不可避免地存在抢占资源的情况,为保障各类业务服务的正常运行,本文认为可采用智能优先级判别来保证服务合理运行,技术上采用完全抢占式、优先级继承、健壮的互斥锁和快速用户空间互斥(rt-mutexes)策略保证服务的合理、有序和高效运行。

如图5所示:

图5

矩形的高度代表该组件所占资源大小。在左侧“一般模式”下,所有组件平均分配资源;而在右侧“智能优先级判别模式”下,“协同代理服务层”将根据运行情况以及实际的硬件性能,通过上述多种技术方式对不同的组件进行动态的资源分配,使各服务组件达到最优的运行状态。

2 应用与体验

上海公安“网上办案”平台改造并投入使用已有近一年时间,在实际运营过程中,改造后的平台与原先采用传统3层架构的系统相比,取得了明显实效。特别是在数据采集重复度、数据一致性以及数据库安全性方面体现出极大的优势。具体归纳为以下几个方面。

首先,采用基于SOA架构的协同代理服务层平台避免公共数据的重复采集和维护。在集中数据库的情况下,协同代理服务层提供了公共数据采集和维护的统一服务接口,将相应的规范标准转化为平台的功能,如避免了在案件办理过程中,各职能部门多次重复采集人员、机构等公共信息,为业务的信息共享和复用提供了技术基础保障,减轻了一线警员的劳动工作量。

其次,基于BPM设计的协同代理服务层保证了业务数据的一致性。由于平台数据统一存放在集中数据服务器中,通过合理的数据库表结构设计可最大限度地减少数据冗余,避免了数据不一致问题。平台通过协同代理层除能实现数据一致性检查外,还可利用数据库本身提供的机制,如触发器、规则等进行数据库服务器级的一致性控制。例如,分布业务中生产出来的人、地、事、物、组织等基础要素数据可通过公共服务组件的统一编码以保证整个平台数据的唯一性。

第三,协同代理服务层采用的中心数据库模式实现了平台的数据安全保护。服务层设计的重要原则是对数据安全级别的保证,通过中间层的隔离管控,在服务器端实施数据访问的等级授权,包括表、视图、字段、存储过程等以防止非法访问;在客户端,通过代理服务层的配置管理组件,将业务流程与角色权限关联,从而避免了非正常登录造成的误操作事件发生,同时也防止了非法入侵引起的平台信息泄密伤害。

3 结论

基于SOA架构的BPM协同代理服务层技术是根据公安实际情况和需求,结合IT业界系统建设经验提出的模块化、构件化三层架构,以保证分布式业务运行部署上的独立性和数据的集中管理。在上海公安“网上办案”平台上的应用,证明了这种改进的架构可以应对公安部门“高度集中化管理和多业务并行信息化”的应用需求。此架构技术可以实现业务规划与基础平台的统一,使得各职能部门的系统之间能无缝连接,其现实意义不仅在于节约运行、维护及开发成本,更在于为“业务分布、数据统一、集约管理”的信息化发展方向提供了实际应用案例。

[1]芦大鹏,郭荷清,郑毅强.数据交换平台中的中介结构研究[J].计算机应用与软件,2008(10)

[2]张艳.“一体化政府”建设实例—集中建设模式下的青岛市电子政务应用系统[J].通讯世界,2007(38B)

[3]李明,王占宏,鲁明;基于J2EE框架的混合模式治安管理信息系统研究与应用[J];计算机工程;2003(01)

[4]刘彦.浅议全省数据集中的优势与风险隐患[J].华南金融电脑,2002(09)

[5]王静,陈万馨,符国梁,柯水喜,翁文花.构建数据大集中的海南电子政务建设工程[J].电子政务,2008(10)

猜你喜欢
代理服务办案组件
无人机智能巡检在光伏电站组件诊断中的应用
茶文化的“办案经”
女法官“马虎”办案,怎么办?
新型碎边剪刀盘组件
疫情防控与检察办案“两不误”——河北检察机关积极探索“无接触”办案
U盾外壳组件注塑模具设计
农村“三资”代理服务浅析
网络安全与防火墙技术
抢钱的破绽
风起新一代光伏组件膜层:SSG纳米自清洁膜层