基于中间件技术的多层分布式系统的研究

1 引言

分布式系统的信息处理分布在许多计算机上而不是局限在单一机器上。目前一般类型的分布式系统体系结构可以分为两种。一种是客户机 / 服务器( C/S )体系结构,它由客户端提供用户界面、运行逻辑处理应用,而服务器接受客户端 SQL 语句并对数据库进行查询,然后返回查询结果。C/S 结构曾给人们带来许多便利,但随着业务处理对系统提出更高要求以后,它也逐渐暴露出其客户端逐渐庞大和服务器负担过重的缺点,如灵活可扩展的工作流定制、保证数据在网络传输的稳定性和准确性、应付峰值数据的高负荷处理和平衡负载等诸如此类的要求,C/S 结构就难以满足。

2 多层分布式体系结构

为了解决两层 C/S 分布式体系结构存在的不足,提出了三层或多层分布式对象体系结构,在这种情况下,业务逻辑从客户端分离出来,移动到中间层。于是,在服务器和客户机之间增加了业务逻辑层或其它应用服务层。系统就成为了具有客户端的表示层、中间的业务逻辑层和数据库服务器的三层或多层体系结构,如图 1 所示:多层分布式系统体系结构的一般模型。多层体系结构将客户和资源分开,降低了服务器的负载,避免了服务器的性能缺陷对整个系统性能的影响,在多个服务器上分布应用程序处理的多层可变结构比二层的体系结构的伸缩性和扩展性更强。

在多层分布式系统中,不同的组件可能用不同的语言来实现,且这些组件可能运行在不同类型处理器上。数据模型、信息表示法以及通信协议可能都不一样。因此,多层分布式系统就需要某种软件来管理这些不同部分,确保它们能通信和交换数据。中间件就是这样一种软件,它位于系统的不同分布式组件之间。

中间件能够使应用系统相对独立于计算机软硬件平台,为大型分布式应用搭起一个标准的平台,把企业分散的系统技术组合在一起,从而实现企业应用软件系统的集成。中间件具有标准的程序接口和协议,使不同硬件和操作系统平台上分布式应用的数据共享和互操作。中间件在操作系统、网络和数据库之上,应用软件之下,总的作用是为处于自己上层的应用软件提供运行和开发环境,帮助用户灵活、高效的开发和集成复杂的应用软件。

随着分布式技术和面向对象技术的结合,产生了大量基于分布式对象中间件的模型。目前主要的分布式系统中间件技术标准有: Microsoft 的 COM/DCOM 技术、 SUN 的 EJB 技术和 OMG (对象管理集团)的 CORBA (公共对象请求代理体系结构)技术为代表的三种基于中间件技术的分布式模型框架。

3 EJB 技术规范

EJB ( Enterprise Java Beans )是 J2EE 的核心技术之一,它是建立基于 Java 的服务器端组件的标准。EJB 是以部件为基础框架,其中每个部件都是分布式对象,可以扩展,也可以适配在不同应用中使用,大大方便了企业应用开发。EJB 不局限于一种特定的操作系统,也不局限于任何一种特别的机构、服务器解决方案、中间件或者通信协议,是一种可重用的具有高度可移植性的组件。EJB 组件模型包含了 EJB 服务器、容器、 Home 接口、 Remote 接口等。

EJB 服务器是管理 EJB 容器的高端进程或应用程序,并提供对系统服务的访问。EJB 服务器实际是各种支持 EJB 安装的服务的集合,这些服务包括分布式事务管理、分布式对象管理和这些对象的分布式调用以及低层次的系统服务。

EJB 容器是管理一个或多个 EJB 类和实例的抽象。它通过规范定义的接口使 EJB 类访问所需的服务。EJB 容器管理 Enterprise Bean 对象的生命周期,协调分布式事务和实现对象安全性。

远程接口( Remote Interface )列出了 EJB 类中的商业方法。EJBObject 实现远程接口,并且客户通过它访问 EJB 实例的方法。EJB 类开发者定义远程接口,容器开发商提供产生相应的 EJBObject 的方法。客户端不能得到 EJB 实例的引用,只能得到它的 EJBObject 实例的引用。当客户端调用一个方法,EJBObject 接收请求,把它传给 EJB 实例,同时提供进程中必要的包装功能。客户端应用程序通过 Home 对象来定位、创建、删除 EJB 类的实例,通过 EJBObject 来调用实例中的商业方法。

Home 接口列出了所定为、创建、删除 EJB 类实例的方法。Home 对象是 Home 接口的实现。EJB 类开发者必须定义 Home 接口。容器厂商应该提供从 Home 接口中产生 Home 对象的实现方法。

EJB2.0 规范定义了三种不同的企业 Bean ,分别是会话 Bean 、实体 Bean 和消息驱动 Bean 。会话 Bean 主要负责模拟商业过程,实现商业逻辑,处理商业规则和工作流。会话 Bean 又分为两个子类,无状态会话 Bean 和有状态会话 Bean 。实体 Bean 表示持久数据,为商业数据建模。按持久性划分,实体 Bean 又可以分为自管理的持久性实体 Bean 和容器管理的持久性实体 Bean 。消息驱动 Bean 和会话 Bean 相似,也执行一些商务逻辑,其区别在于只能够通过给这些 Bean 发送消息来调用它们,且实现了异步处理机制。从分布式计算的角度看,EJB 即提供了分布式技术的基础,又提供了对象之间的通信手段。

EJB 技术的特点: ① 可移植性。由于 EJB 规范颁布了一组明确的 EJB 容器和 EJB 组件之间的契约,这保证了 EJB 组件在不同 EJB 服务器上可移植性。② 平台独立性。EJB 体系结构完全独立于任何特定的平台、协议和中间件等基础设施。一个平台上开发的应用程序不做修改就可以移植到另一平台,完全实现了“一次编写,处处运行”的目的。③ 简化了分布式对象的开发、部署和访问。EJB 分布式对象的开发人员只要按照 Enterprise Java Bean 建立的契约和协议实现对象。这使整个开发和管理变得简单,大大降低系统建设成本、减小开发周期。

时间: 2024-08-31 23:02:47

基于中间件技术的多层分布式系统的研究的相关文章

基于数据消冗技术的大数据加密算法研究

基于数据消冗技术的大数据加密算法研究 华北水利水电大学   王蒙蒙 论文的主要研究内容和创新点包括:1.大数据通用加密模型及加密技术原理研究.在对大数据基本特征及通用加密模型进行系统研究的基础上,深入剖析了基于现代密码体制.基于生物工程.基于属性基和基于并行计算四类大数据加密方案的技术原理和优缺点. 2.提出了一种基于Bloom filter技术的大数据消冗算法.根据大数据信息海量.数据量增长快.数据类型多样化.密度低和冗余度高等基本特征,深入研究了完全文件.固定长度块.变长分块和滑动窗口4种消

海尔已着手研究一款基于4G技术的可移动的对讲产品

春节长假归来后,各种吐槽成为一大看点,从冯氏春晚到长腿"欧巴",横评竖指之间俨然人人都是蔡明小品中"毒舌妇",其中最为有趣的是,"单元门对讲"竟然也被口水淹没,因为这是春节拜年必须跨越的"第一关".上班族刘先生发布微博称,自己对单元对讲机"爱恨交织","爱它是因为没它不可,恨它是因为它妄称智能".刘先生称,自己平时工作,家中只有妻子一人照顾孩子,有时回家若正赶上妻子忙不过来,自己就只能站

基于物联网技术的食品安全监管与对策研究

基于物联网技术的食品安全监管与对策研究 孙羚宇 鄂旭 刘春晓 张野 冯冠 最近几年,人们的生活质量水平逐渐提升,人类对身体健康的重要性认识不断增加,食品安全的监管问题对全人类幸福和身体健康具有直接影响.伴随着物联网的发展和进步,物联网在各行各业的应用越来越广泛,前景也越来越光明.文中主要阐述了物联网的概念和物联网技术的主要特征,还对物联网现今涉及领域和应用能力进行了深入探究;然后对物联网技术在食品安全监管中的应用影响力进行了研究和分析;最后对物联网技术环境下食品安全监管的策略进行了详细的归纳和总

基于DeepZoom技术的Bing Maps客户端实现研究

目前基于Silverlight技术的Web GIS客户端实现,包括微软Bing Maps Silverlight Control,以及开源的Web GIS客户端组件DeepEarth 项目,核心都是采用Silverlight中的DeepZoom技术实现.可能您已经知道 DeepZoom技术以MultiScaleImage控件为核心,其内部有一个 MultiScaleTileSource类型的源属性,主要用于设置 MultiScaleImage控件所要呈现的数据源,可以通过学习Deep Zoom

Web数据库中间件技术

web|数据|数据库 Web数据库中间件技术 曾晓金    (云南工业大学计算机应用重点实验室 昆明 650051) 摘要:介绍了Web数据库的几种中间件解决方案,并比较了它们的特色与不足,以及Web数据库出现的相应最新技术. 关键词:中间件 CGI ASP ISAPI NSAPI JDBC 随着Internet/Intrranet的兴起与发展,Web服务器与数据库服务器的连接显得越来越重要,许多厂家不断推出新技术.新产品,使得连接更加简洁.迅速和方便.Web与数据库连接技术已成为基于Web的信

基于中间件/构件的开发

定义: 中间件(middleware)是基础软件的一大类,属于可复用软件的范畴.顾名思义,中间件处于操作系统和用户的应用软件的中间. 中间件在操作系统.网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行和开发的环境,帮助用户灵活.高效地开发和集成复杂的应用软件,中间件是一类软件,中间件不仅要实现互联,还要实现应用之间的互操作:中间件是基于分布式处理的软件,最突出的特点是其网络通信功能. 软件复用: 最早的软件开发方法就是编程.写代码,其缺点在于无法复用,为此提出了构件化

基于JSP技术的网络教学平台设计

js|设计|网络 摘要 网络教学平台是面向教师和学生的网络教学系统,采用JSP+XML+SQL Server开发,对该平台的体系结构.功能进行了详细的分析,并介绍了设计中所采用的关键技术. 关键词 网络;三层结构;教学平台;JSP;流媒体 引言 随着计算机技术的飞速发展,信息网络已成为社会发展的重要保证.如何以网络为纽带快速.高效.方便地实现知识传递,以现代化手段促进教学改革,将传统的课堂教学转变为课堂+电脑+网络课堂+internet等多种学习方式,是教育工作者应当为之努力的方向.基于JSP技

基于蓝牙技术的无线接入网

摘要:当前,如何实现移动用户的无缝因特网接入成为通信领域研究的一大热点,本文首先介绍了基于蓝牙技术的两种无线接入技术的原理,在此基础上简单讨论了它的路由技术,提出了针对越区切换问题的一种简单解决方案,最后给出了蓝牙接入网中微微网的几种实现方案. 1 概述 随着笔记本电脑和个人数字助理(PDA)的逐渐普及,人们对通信技术的期望越来越高,希望随时都能够接入因特网,实现移动互联. 无线接入网的概念就是指在该网内存在着多个无线接入点,移动终端通过它附近的无线接入点接入到局域网.此时的移动终端可以访问该局

腾讯开源基于HTML5技术的专业级图像处理引擎 AlloyImage

腾讯开源基于http://www.aliyun.com/zixun/aggregation/33875.html">HTML5技术的专业级图像处理引擎 Alloy Image 发表于16小时前| 次阅读| 来源CSDN| 0 条评论| 作者张红月 腾讯AlloyTeamAlloyImageAlloyPhotoGitHub开源HTML5 摘要:近日,腾讯 Web前端团队AlloyTeam推出了最 新的开源项目:一个基于HTML5技术的专业级图像处理引擎--AlloyImage(简称AI),以