APP下载

基于Web的分布式计算机结构及技术应用研究

2022-11-07吴冬芹

科技创新与应用 2022年31期
关键词:中间件分布式客户端

吴冬芹

(南京信息职业技术学院 数码艺术学院,南京 210023)

将Web环境与分布式计算技术有机融合,是实现计算机结构分布式应用的关键。相比于传统B/S结构数据访问模式,基于中间件的分布式数据访问模式可实现对数据库的集中控制和有效管理,同时还能提供全新的业务逻辑编写技术,以及增强系统运行稳定性,在实际应用中表现出更强的优越性。现代信息管理系统承担着更加多样的功能,数据交互也更加频繁,在这一背景下,有必要设计一种基于Web的分布式计算机结构,利用分布式数据访问中间件来提高系统响应速率、优化系统运行性能,从而更好地满足用户的使用需求。

1 基于Web的分布式应用程序框架

从企业信息系统的使用需求出发,基于Web的分布式应用程序框架应满足以下要求:①能够实现对客户端的用户管理与权限控制,对客户端的计算资源有较高的利用率;②提供至少2个编程接口,既可满足在线编程需要,同时又能提高信息传递效率;③具有一定的可扩展性,可支持HTML、ActiveX等程序语言的在线开发;④具有较强的可靠性,使用主流的加密措施(如数字签名等)对数据进行加密,保障传输安全。基于上述需求设计了Web应用程序框架的基本结构,如图1所示。

图1 分布式应用程序框架的结构组成

客户端运行环境是以用户界面作为切入点,向用户提供注册/登录、数据访问和软件管理等一系列服务。为保证客户端运行环境的安全性,本文设计的客户端运行环境,是以ActiveX控件的形式,将客户端嵌入到IE浏览器中。这样一来,像用户登录、权限设置和访问服务等一系列功能均可基于Web实现,从而减轻了系统运行负载,并保证了客户端运行环境的安全。

2 基于中间件的分布式数据访问技术

2.1 分布式数据访问中间件的结构模型

传统的B/S结构是在Web浏览器和数据库之间建立Web服务器。Web服务器基于JSP、CGI等技术访问数据库,然后将结果以HTML或XML等方式反馈给Web浏览器。这种结构存在诸多弊端,例如无法支持客户端直接访问数据库,导致用户请求响应延时严重;还有就是增加开发难度和维护成本。针对上述缺陷,本文设计了一种基于中间件的分布式数据访问模式,其结构模型如图2所示。

图2 分布式数据访问中间件结构模型

基于该结构模型的访问流程如下。

(1)客户端发出访问请求,并在数据接口组件处生成一个数据访问语句。数据接口组件根据语句内容,调用相关的安全组件,并在客户端与服务器端之间构建一条信息传输通道。

(2)通道建立后,将数据访问语句从数据接口组件传输到远程数据服务中心,并在成功接收该语句后,识别其业务逻辑。执行一个判断程序,如果判断结果为“业务逻辑”,则调用相应的业务逻辑脚本解析部件;如果判断结果为其他逻辑,同样选择与之对应的脚本程序进行解析。

(3)远程数据服务中心调用数据访问控制部件实现对数据库的访问,数据库在接收该访问请求后,可根据访问权限作出“接受”或“拒绝”的判断。

(4)如果允许访问,则完成相应的数据检索、调用等操作,并将数据访问结果反馈给客户端。

2.2 业务逻辑脚本语言的开发

由于数据库访问是基于逻辑组件实现的,因此要想提升访问效率和保证数据安全,必须要开发一种适配性更强的业务逻辑脚本语言。该语言可以提供面向对象的开发方法,并且能够与数据访问语言(如SQL等)具有较好的兼容性。基于脚本语言的业务逻辑处理流程如图3所示。

图3 业务逻辑处理过程

开发人员根据业务需求,用脚本语言编写相应的业务逻辑,然后将其注册到分布式数据访问中间件中。整个分布式数据访问中间件包含了3部分,即业务逻辑访问接口、脚本语言解析软件和数据访问部件。中间件在完成脚本程序的解析后,提取出面向对象的编程接口,并通过逻辑调用的方式呈现给客户端的开发人员。开发人员根据业务逻辑处理效果,重新修改脚本语言,直到业务逻辑处理结果符合预期。这种基于中间件与业务逻辑脚本语言相结合的开发模式,显著提高了系统软件开发效率。

2.3 分布式数据访问中间件的可扩展性技术

在分布式应用程序框架下,由于多台客户端均需要通过中间层服务器访问数据库,会加大中间层服务器的运行负载,特别是在多个访问请求同时发出后,很容易因为网络堵塞而导致响应延迟。为了解决这一问题,需要设计一个具有可扩展功能的分布式数据访问中间件。在框架模型接入的客户端数量较少时,只开放少量的访问接口,既能满足系统运行要求,又可以节约系统资源。随着接入客户端数量的不断增加,可以扩展新的接口,在满足系统功能需求的基础上还能保证负载均分。现阶段可支持分布式数据访问中间件扩展的技术有连接池、多线程等。负载均衡(Load Balancing)是近几年出现的一种新型可扩展技术,其能通过应用系统分区的方式,将应用系统按照不同功能分成若干个分布在不同服务器上的子系统。客户机在发出访问请求或服务请求后,首先进行请求解析,然后按照“就近原则”调用最近服务器作出响应,建立会话并满足客户需求。

2.4 分布式数据访问中间件的安全机制

安全性也是分布式数据访问中间件设计中需要重点考虑的因素之一,具体又可分为2部分,即数据访问安全、数据传输安全。在数据访问方面,可以采取将客户端与数据库完全独立的设计,防止用户直接访问数据库。即便是用户通过验证正常登录客户端,也必须经由分布式数据访问中间件向数据库发送访问请求的指令,并且经过数据库验证并接收该访问请求后,方可浏览、调用数据,从而提高访问安全性能。在数据传输方面,一种措施是选择安全性较高的数据库,例如现阶段通用的Oracle、Informix等,这些数据库可以自动对传输协议进行加密,有效避免了数据传输过程中被第三方拦截的情况。另一种措施则是在客户端与服务器端之间新增一条加密的数据通道,也能起到保护数据传输安全的效果。加密数据通道的模型如图4所示。

图4 利用分布式数据访问中间件建立安全数据通道

3 基于Web的分布式应用程序框架系统的设计与实现

3.1 客户端运行环境设计

该框架系统主要由数据库、分布式数据服务模块和用户管理服务模块等组成。框架系统数据库为独立的Microsoft Access数据库,采用分区存储模式,有系统信息、临时数据和日志数据3个分区,提高了数据存储和调用效率。用户管理服务、模块管理服务采用集成化设置,在Web服务器的IIS中用PHP脚本语言实现。在IIS和客户端运行环境之间使用HTTP协议实现通信。使用IE提供的ActiveX插件,将客户端嵌入到Web浏览器中,提供客户端运行环境。用户通过Web浏览器的登录界面,输入对应的账号、密码后,可以成功登录客户端主界面,该页面提供了系统管理(数据库注册与权限分配等)、系统开发(开发指南与VC测试等)、用户反馈等功能。其中,模块管理是客户端运行环境的重要组成,模块管理策略如图5所示。

图5 软件模块管理策略

3.2 用户和模块管理服务软件设计

用户管理服务提供用户登录、用户注册与删除和用户权限管理等服务;模块管理服务提供模块下载功能。由于2个模块的功能实现都是基于数据库中用户和模块信息进行操作,因此在软件设计中需要提供专门存储用户与模块信息的数据表。以用户信息为例,其信息表(User_Info)见表1。

表1 用户信息表

在模块信息表中,考虑到模块数量较多,因此采用树状结构对模块进行分类。例如在“系统开发”一项中,分别包含了相关文档、开发指南和开发说明等子项,从而显著提高了数据处理效率和查询效率。除此之外,还设计了“用户-栏目权限表”,在用户和模块之间建立映射关系,也是提高查询效率的一种有效措施。

3.3 分布式数据访问中间件设计

中间件由服务器端的分布式数据服务(COM服务)和数据访问部件(ActiveX控件)组成,并且基于2个独立平台运行。本系统设计中采用Delphi定义数据集的操作接口,基于TCP/IP协议实现中间件的通信传输,分布式数据访问中间件的功能实现流程为:在客户端与服务器端分别嵌入1个连接件,用于在2个端口之间建立数据访问通道。在系统运行并产生数据交互需求时,由客户端向服务器端发送包含SQL的访问语句。服务器端在接收到该访问请求后,根据SQL语句信息访问对应的数据库,并从数据库中获取相应的数据,以CDS格式将数据封包,并以数据集形式发送给客户端。客户端在接收数据集的过程中,同步打开数据访问部件与应用软件模块之间的Dataset数据访问接口,以便于应用软件调用数据。

3.4 框架系统的应用

为验证基于Web的分布式应用程序框架系统的应用性能,将设计好的框架模型应用到某企业的生产运营管理信息系统中,该系统主要包括2部分,其一是基于Web浏览器的网页部分,包括企业简介、公报通知、安全监察、廉政建设和职工园地等;其二是网站维护部分,包括用户及其权限管理、数据库维护和网页内容编辑等。基于Web分布式应用程序框架模型的企业信息系统应用效果如下。

(1)应用软件基于Web浏览器运行,解决了传统分布式应用系统维护成本高、维护难度大的问题。

(2)强化了对用户权限与软件模块的管理,避免了用户越权访问的情况,同时还能节约系统资源,提高了系统的安全性能。

(3)基于中间件的分布式数据访问,提高了数据访问与调用效率。同时保证数据库与客户机相互独立,降低了数据并发时的系统负载,优化了信息系统的运行性能。

(4)应用软件与信息系统相互独立,需要对应用软件进行日常维护或更新升级时,管理员不必重复进行权限验证,可以在登录Web浏览器后直接从应用程序框架上进行操作,从而简化了操作流程并提高了系统的稳定性。

4 结束语

为解决传统B/S架构存在的用户请求响应延时、脚本语言功能有限等问题,本文使用基于中间件的分布式数据访问技术设计了Web应用程序框架模型,并将该模型应用到某企业的信息管理系统中。从应用效果来看,改进后的信息系统运行稳定性更好,数据访问与调用速率更快,达到了预期效果。下一步,还要在Web应用程序框架的基础上继续开发移动分布式应用系统,从而推动这一技术在远程故障诊断、远程数据分析等领域有更好的应用。

猜你喜欢

中间件分布式客户端
你的手机安装了多少个客户端
“人民网+客户端”推出数据新闻
——稳就业、惠民生,“数”读十年成绩单
居民分布式储能系统对电网削峰填谷效果分析
我国自主可控中间件发展研究
基于Paxos的分布式一致性算法的实现与优化
虚拟专用网络访问保护机制研究
新华社推出新版客户端 打造移动互联新闻旗舰
以实力证明 用事实说话
中移动集采:东方通中间件脱颖而出
金蝶 引领中间件2.0新时代