基于CORBA/WEB技术构建三层体系结构的应用

CORBA 架构体系指南(通用对象请求代理体系架构)​ 什么是 CORBA 架构?概述通用对象请求代理体系架构 (CORBA) 是由对象管理组 (OMG) 定义的标准,它使以多种计算机语言编写并在多台计算机上运行的软件组件能够协同工作。CORBA 是一种跨网络分发对象的标准,以便可以远程调用对这些对象的操作。CORBA 与特定的编程语言无关,任何具有 CORBA 绑定的语言都可以用来调用和实现 CORBA 对象。对象以称为接口... 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> 1 问题提出 在应用系统开发过程中,CLIENT/SERVER体系结构得到了广泛的应用 。其特点是,应用程序逻辑通常分布在客户和服务器两端,客户端发出数据资源访问请求,服务器端将结果返回客户端。但CLIENT/SERVER结构存在着很多体系结构上的问题,比如:当客户端数目激增时,服务器端的性能会因为负载过重而大大衰减;一旦应用的需求发生变化,客户端和服务器端的应用程序都需要进行修改,给应用维护和升级带来了极大的不便;大量的数据传输增加了网络的负载等等。  随着分布式对象技术的逐渐成熟,多层分布式应用体系结构得到了越来越多的应用。应用系统只有向多层分布式转变,才能最终解决CLIENT/SERVER结构存在的问题。在多层架构下,应用可以分布在不同的系统平台上,通过分布式技术实现异构平台间对象的相互通信。将应用系统集成于分布式系统之上,能极大地提高系统的可扩展性。   在多层分布式应用中,在客户端和服务器之间加入了一层或多层应用服务程序,这种程序称为“应用服务器”。开发人员可以将应用的商业逻辑放在中间层应用服务器上,把应用的业务逻辑与用户界面分开。在保证客户端功能的前提下,为用户提供一个简洁的界面。这意味着如果需要修改应用程序代码,只需要对中间层应用服务器进行修改,而不用修改成千上万的客户端应用程序。从而使开发人员可以专注于应用系统核心业务逻辑的分析、设计和开发,简化了应用系统的开发、更新和升级工作。 2 CORBA 简介 CORBA是Common Object Request Broker Architecture的缩写,它是分布计算机技术的发展结果,CORBA技术的成功在于,它除了能够解决由于多个系统层次上的异构带来的“孤岛”问题,还在理论和技术上扩展了客户/服务器的模式,使系统具有良好的可伸缩性,便于系统的开发与升级,保护已有投资。 CORBA体系的主要内容包括以下几部分, (1) 对象请求代理ORB(Object Request Broker):负责对象在分布环境中透明地收发请求和响应,它是构建分布对象应用、在异构或同构环境下实现应用间互操作的基础。 (2) 对象服务(Object Services):为使用和实现对象而提供的基本对象集合,这些服务应独立于应用领域。主要的CORBA服务有:名录服务(Naming Service)、事件服务(Event Service)、生命周期服务(Life Cycle Service)、关系服务(Relationship Service)、事务服务(Transaction Service)等。这些服务几乎包括分布系统和面向对象系统的各个方面,每个组成部分都非常复杂。 (3) 公共设施(Common Facilitites):向终端用户提供一组共享服务接口,例如系统管理、组合文档和电子邮件等。 (4) 应用接口(Application Interfaces):由销售商提供的可控制其接口的产品,相应于传统的应用层表示,处于参考模型的最高层。 (5) 领域接口(Domain Interfaces):为应用领域服务而提供的接口。如OMG组织为PDM系统制定的规范。 CORBA的产生有其特定的背景,它是在面向对象的技术兴起,客户/服务器模式普遍得到应用的前提下,为屏蔽通信和实现细节的需求,继承已有系统,消除“孤岛”现象而产生的。他弥补了传统分布处理系统的不足(如RPC等),具有很多新的特色: (1) 引入代理(Broker)概念。代理起到如下作用:完成对客户方提出的抽象服务请求的映射;自动发现和找到服务器;自动设定路由,实现服务方程序的执行。 (2) 客户方程序与服务方程序完全分离。用传统的客户/服务器方式有很大的不同,客户将不再与服务方发生直接的联系,而仅需要与代理发生联系,客户与服务器方都可方便升级。 (3) 提供“软件总线”机制。任何应用系统只要提供符合CORBA系统定义的一组接口规范,就可以方便的集成到CORBA系统中,这个接口规范独立于任何实现语言和环境。如此,客户应用于服务对象之间可以透明地交互运行,实现应用软件在“软件总线”上的“即插即用”。 (4) 分层的设计原则和实现方式。CORBA系统的底层核心是一个精练的系统,各种复杂系统和应用可以由核心扩展和延伸。 CORBA技术是先进技术发展的结果,它将面向对象的概念揉合到分布计算中,使得CORBA规范成为开放的、基于客户/服务器模式的、面向对象的分布计算的工业标准。 3 CORBA与WWW 相结合 WWW技术迅速发展,它已不再仅仅是超媒体信息的浏览工具,以逐步成为人们进行事务处理的前端。由于分布对象的计算技术,特别是CORBA技术对于提高WEB的网络计算能力有着无可比拟的巨大作用,CORBA与WWW技术迅速融合,产生诱人的技术前景。 CORBA与WWW结合,构架出真正的三层体系结构。这种三层的体系结构,以分布对象技术为基础构架,增加了应用层,将客户层与资源层隔开,降低了Web服务器的负载,避免了Web服务器的性能缺陷对整个性能的影响。并且具有连接缓冲,负载均衡,安全管理等功能,从而提高了Web应用整体的灵活性,可伸缩性,可扩展性。   该结构中,CORBA客户方程序从Web服务器上下载执行,与应用服务器上的CORBA应用对象通过IIOP(Internet-Inter-ORB Protocol)协议进行通讯,调用其指定的操作。CORBA应用对象首先对客户的请求进行认证和解释,根据客户请求的内容,或是直接访问资源层的数据库,或是与网络上的其它CORBA对象交互,共同完成客户请求。CORBA-WEB体系与ActiveX,JAVA RMI(Remote Method Invocation)比较起来,有明显优势。 在CORBA与Web的结合技术上,JAVA是CORBA结合Web的一个很好的切入点。CORBA规范中定义了IDL/Java的映射,CORBA产品提供商则根据规范开发了Java ORB。 JAVA ORB不仅能开发分布式的JAVA应用,更重要的是它能够开发WEB的CORBA应用。 Java ORB是基于CORBA的Java应用的中心,Java客户,包括Applet和Application,通过桩(Stub)代码向本地的Java ORB发出请求,本地ORB再与服务器方的Java ORB进行IIOP通讯,服务方ORB根据请求的内容调用相关的骨架(Skeleton)代码由指定的对象实现来完成请求,并将请求结果按原路返回给客户。Java ORB作为信息中介的桥梁,负责远程对象请求的生成、编码、传输等工作。 4 Java的CORBA/WEB应用实现概述与图解 在进行JAVA的CORBA/WEB应用系统开发时,首先要建立IDL描述文件,然后把IDL描述文件通过IDL/JAVA进行编译,生成相应的桩和骨架文件。接下来采用JAVA分别实现服务器方和客户方程序,然后将服务器方主程序和客户方程序分别与骨架文件和桩相联编,并将该客户端程序嵌入到HTML页面中,这样,通过浏览器浏览该页面,就可以调用服务器方应用对象实现的操作。 5 JBuilder 4 Enterprise 开发CORBA/WEB应用实例 实例思路 本实例将建立一个银行账号查询程序。先创建一个IDL文件,执行idl2java编译器,生成服务器端的骨架和对应的客户端的桩,然后,基于以上生成的框架,创建服务器端JAVA程序和html客户端程序。 实例开发工具 Borland Jbuilder 4 Enterprise (1) 选择File|New Project 菜单,在Jbuilder 中创建一个新项目。 (2) 修改Project name为BankTutorial,修改Root path 为c:sample,单击完成。 (3) 选择File|New,在Enterprise页上选择Sample IDL。 (4) 在File Name框中输入BankTutorial.idl,单击OK,将创建一个示例IDL文件。在IDL文件中输入如下代码: module Bank { interface Account();{ float balance(); }; interface AccountManger { Account open(in string name); }; }; (5) 在project 栏中右击BankTutorial.idl文件。选择Make,执行idl2java编译器。 (6) 创建服务器端程序:选择File|New,从Enterprise页中选择CORBA Server Application。 (7) IDL File 框中选择c:sampleBankTutorialscr BankTutorial BankTutorial.idl。选择Generate Visible Application With Monitor,为服务器程序创建一个监控界面。单击OK。服务器程序名为BankServerApp.java。 (8) 在具体项目开发中,CORBA接口服务器端实现,可加到project栏中的banktutorial.Bank.server相应类里。本实例暂不加任何用户代码。 (9) 创建CORBA的HTML客户端程序,选择File|New,从Enterprise页中选择HTML CORBA Client 。 (10) HTML CORBA Client 向导中,IDL File选择与生成服务器端对应的IDL文件,即:c:sampleBankTutorialscr BankTutorial BankTutorial.idl。package选择banktutorial,单击OK,将生成HTML CORBA Client相关文件,其中会生成一个jsp页面文件。 (11) 关客户端的程序,可加到project栏中的banktutorial.Bank.clienthtml相应的类中。本实例暂不加任何用户代码。 (12) 译项目,选择project|Make Project “BankTutorial.jpx”。 (13) 启动Smart Agent,选择Tools|VisiBroker Smart Agent。 (14) 启动服务器程序:在project栏中右击文件BankServerApp.java,选择Run。在屏幕上将显示服务器端运行界面。 (15) 运行HTML 客户端程序:在project栏中右击文件FormBank.jsp,选择Web Run。在屏幕上将显示客户端运行界面。此时,如果打开浏览器,输入地址: http://localhost:8080/scr/banktutorial/FormBank.jsp ,在浏览器中会显示相应界面。 (16) 一个基于CORBA/WEB技术的三层结构的应用框架已经建立了。 6 小结 基于CORBA/WEB技术建立三层结构的应用,有效地解决了在CLIENT/SERVER体系结构下负载平蘅、系统伸缩性等问题,JAVA是实现CORBA/WEB技术很好地切入点,Borland Jbuilder 4 Enterprise 提供了纯JAVA开发环境,为实现CORBA/WEB技术提供为强大地技术支持。 参考文献 [1] Jin Huang. Internet/CORBA-based Multi-Agent System for Tele?Design and Manufacturing. ICAMT′99,1999.6 [2] OMG. The Common Object Request Broker: Architecture and Specification. Revision2.0, 1995.7
C2000 ePWM与SDFM同步配置:从寄存器到Driverlib实战解析 在嵌入式实时控制系统中,脉宽调制(PWM)是实现电机驱动、数字电源等应用的核心技术,其信号质量和时序精度直接决定了系统性能。为实现精确控制,PWM信号常需与模数转换器(ADC)或Sigma-Delta滤波器(SDFM)的采样时刻严格同步,以消除开关噪声并获取准确的反馈信号。其技术原理在于通过硬件同步机制,将PWM的特定时间点(如周期中心)作为触发源,控制数据采集的启动时刻。这种硬件级同步能有效提升闭环控制的稳定性和动态响应速度,广泛应用于伺服驱动、变频器等高性能场景。本文聚焦于TI C2000系列微控制器, 阅读详情

相关推荐

以太网测试用例(光模块线缆、网卡类设备、交换类设备)

LeCroy力科网络测试相关的测试用例分享:光模块/DAC/ACC/AEC/AOC测试,网卡类产品测试/GPU/DPU/SmartNIC,交换类产品测试。涉及物理层的FEC,SKEW,Tx/Rx Taps和Layer23层的网络性能测试/吞吐量延迟抖动丢包率背靠背性能,以及RDMA带状况的网络协议分析。同步提供400G高速的以太网的损伤,提供定量,可重复的负面压力测试环境。

专注有线以太网性能测试--丹麦信雅纳网络(Xena Networks) 1998

WebScrab代理工具使用方法

WebScarab说白了就是一个代理工具,他可以截获web浏览器的通信过程,将其中的内容分析出来,使你很容易修改,比如我发一个submit请求,WebScarab首先截获到,不急着给真正的服务器,而是弹出一个窗口让你可以修改其中的内容,修改结束了再提交给服务器,如果网页的输入框进行了一些限制,如长度限制、数字格式限制等,只能使用这种方式进行修改了;它也可以修改服务器返回的response,这就可以

snert的专栏 2450

CMake安装grpc生成gRPCTargets.cmake文件

以下是安装语句: cd grpc_folder git submodule update --init cmake .. make -j 4 sudo make install 然而编写依赖gRPC的程序,发现无法调用gRPC的CMake文件,错误提示如下所示: include could not find load file: /usr/local/lib/cmake/g...

2331

J2EE、CORBA、DNA三种主流中间件平台比较

 一、概述  1.中间件的概念    随着计算机技术的飞速发展,各种各样的应用软件需要在各种平台之间进行移植,或者一个平台需要支持多种应用软件和管理多种应用系统,软、硬件平台和应用系统之间需要可靠和高效的数据传递或转换,使系统的协同性得以保证。这些,都需要一种构筑于软、硬件平台之上,同时对更上层的应用软件提供支持的软件系统,而中间件正是在这个环境下应孕而生。    由于中间件技术正处于发展过程之中

1401

用Pixhawk 2.4.8和PX4 1.13,从零搭建你的第一支无人机编队(附避坑清单)

本文详细介绍了如何使用Pixhawk 2.4.8飞控和PX4 1.13固件从零搭建低成本无人机编队系统。涵盖硬件选型、固件配置、多机通信和编队飞行逻辑开发的全流程,特别针对学生和爱好者提供实战验证的避坑方案,帮助实现多机协同飞行。

weixin_27219587的博客 403

Trae CN 使用入门指南

【代码】Trae CN 使用入门指南。

weixin_42551921的博客 8775

Corba介绍

Corba CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构,通用对象请求代理体系结构)是由OMG组织制订的一种标准的面向对象应用程序体系规范。或者说 CORBA体系结构是对象管理组织(OMG)为解决分布式处理环境(DCE)中,硬件和软件系统的互连而提出的一种解决方案。   简介 基本情况 OMG成立于1989年,作...

绝圣弃智-零的博客 2736

在LangChain中使用DashVector进行高效向量检索

DashVector为需要处理高维向量数据的开发者提供了一种便捷且高效的解决方案。通过将其集成到LangChain生态系统中,您可以轻松实现复杂的语义搜索和数据分析功能。DashVector官方文档LangChain GitHub仓库有关DashVector的详细notebook示例。

sjufgwgfhoia的博客 456

关于CORBA/SNMP网关的想法

不久前,在网上看到一篇文章介绍了CORBA/SNMP网关的模型。作者为了在大型异构的网络中更好地采用面向对象技术封装底层地网络协议,在被管对象和管理者之间建立了一个CORBA/SNMP网关。其作用就是把SNMP操作和数据(包括监听陷阱信息)与CORBA对象之间进行一个映射和转换,这样,以前管理者直接对协议的操作久可以转换为对CORBA对象的操作。这就形成了一个管理者/网关/代理的三层结构。目前

天地会青木堂 2164

第2章 数据库关系模型-单元测验-数据库原理及应用

第2章 数据库关系模型---数据库与机器学习 作业 常用的关系查询操作包括选择、投影、连接、并、交等。 v 实体完整性是指关系表的属性组成必须是完整的。 x 自然连接是一种等值连接。 v 在参照完整性中,可以定义级联操作。 v 用户自定义完整性可以实施数据的业务约束。 v 每个关系是一个二维表,但二维表不一定是关系。 v 关系中复合键至少包含两个属性。 v 代理键是为了唯一标识关系的不同元组,需要在表单或报表中显示出来。 x ...

aiqq136的博客 5727

手把手教你五种方案配置Obsidian免费同步,全平台通用(支持Alist/OpenList)

Obsidian是一款优秀的Markdown笔记工具,但官方同步服务每年近700元让人望而却步💸 本文整理了5种免费同步方案,涵盖苹果生态专属方案、多网盘插件同步、版本管理同步、点对点同步、自建实时同步等不同场景📱💻 每种方案都附有详细配置步骤,助你找到最适合的同步方式✨

XiaoqiangClub的博客 1835

JBuilder 4 Enterprise 开发CORBA/WEB应用实例

实例思路 本实例将建立一个银行账号查询程序。先创建一个IDL文件,执行idl2java编译器,生成服务器端的骨架和对应的客户端的桩,然后,基于以上生成的框架,创建服务器端JAVA程序和html客户端程序。 实例开发工具 Borland Jbuilder 4 Enterprise (1) 选择File|New Project 菜单,在Jbuilder 中创建一个新项目。 (2) 修改Project

cl007的专栏 1145

【软考之软件设计师】学习笔记

interface 接口implements 实现接口(与接口配套使用)接口里要是有方法定义,子类就会实现。

云轩阁 2535

corba/com/dcom

分布式计算环境与多层结构的发展背景早在70年代末第一个关系型数据库管理系统出现时,计算机的数据库时代就已悄然开始。那时的观念是由应用程序与关系型数据库共享统一文件系统,这种数据处理的模式一般称为单层结构。由于这种结构的数据库程序占用计算机资源较多也不利于多用户环境数据库的访问,于是在80年代中期,数据库应用开始转向C/S(Client/Server) 结构, 也就是所谓的两层结构(2-Tier

nieggmoonsun的专栏 1528

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

基于J2EE的三层B/S信息系统研究

  随着软件系统的规模和复杂性的增加 ,软件体系结构的选择成为比数据结构和算法的选择更为重要的因素 ,三层客户/服务器体系结构为企业资源规划的整合提供了良好的框架 ,是建立企业级管理信息系统的最佳选择。随着体系结构的发展,软件框架结构方面也在不断发展,目前在多层应用结构方面出现Java技术和.net技术的实现的不同的解决方案,二者各有优缺点,分别适用于不同规模的系统的要求。 本文将结合电信计划建设

键者天行 1万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

技术发展历程:从 CORBA 到微服务

这些物流企业的系统可能基于不同的技术栈搭建,有的用.NET,有的用 Python。借助 Web Services,电商平台通过 SOAP 协议封装订单数据,以 WSDL 描述服务接口,发布到 UDDI 注册中心,物流企业就能轻松发现并接入服务,实现订单信息的无缝对接与处理,让企业间的集成变得前所未有的容易。并且,CORBA 的部署和维护难度很高,不同厂商实现的 CORBA 产品兼容性欠佳,这使得开发成本居高不下,逐渐难以适应快速发展的网络技术环境,于是催生了新的技术来替代它。不过,RPC 也并非完美无瑕。

1691

【架构-34】浅谈构件技术CORBA、EJB、COM+

CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)是一种软件架构,它允许不同计算机系统之间进行通信和数据交换,不管这些计算机系统是用什么编程语言编写的,也不管它们运行在什么类型的硬件上。想象一下,你有很多不同的玩具,它们来自不同的制造商,有的会说话,有的会动,但它们之间不能互相交流。想象一下,你正在组织一个大型的国际美食节,这个美食节需要不同的厨师团队来自世界各地,他们要在一个共同的平台上展示他们的厨艺。

qq_45611002的博客 1676

使用JAVA开发CORBA应用

通用对象代理体系结构CORBA(Common Object Request Broker Architecture)是对象管理组织所定义的用来实现现今大量硬件、软件之间互操作的解决方案,CORBA也是迈向面向对象标准化和互操作的重要一步。   ■CORBA技术简介   简单地说,CORBA允许应用之间相互通信,而不管它们存在于哪里以及是谁设计的。CORBA1.1于1991年由OMG发布,其中定义了

wxyxl的专栏 1881

SOA架构的三层体系结构分布式系统

虽然现在SOA比较成熟,但还要了然该理论形成的一些技术理论。本文将着重介绍三层体系结构分布式系统。      三层体系结构分布式系统      三层体系结构是由二层结构的胖终端中的应用构件独立出来组成了应用层。为解决分布式系统中的各种潜在复杂性,提出了中间件技术及其理论,称为第五个技术与基础理论体系。     八年前我的最后一位博士生王文军的学位论文是《分布式系统的联邦结构》,即面向

flitingperson24的专栏 4736

用JAVA开发CORBA应用实例

通用对象代理体系结构CORBA(Common Object Request Broker Architecture)是对象管理组织所定义的用来实现现今大量硬件、软件之间互操作的解决方案,CORBA也是迈向面向对象标准化和互操作的重要一步。 ■ CORBA技术简介 简单地说,CORBA允许应用之间相互通信,而不管它们存在于哪里以及是谁设计的。CORBA1.1于1991年由OMG发布,其中定义了接口定

Mckay的专栏 953
上一篇: Oracle
下一篇: 装入png图形文件时的问题
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值