基于中间件技能的多层漫衍式体系的研究
CORBA 的底层布局是基于面向工具模子的,由 OMG 接口描写说话( OMG Interface Definition Language, OMG IDL )、工具哀求署理( Object Request Broker, ORB )和 IIOP 尺度协议( Internet Inter-ORB Protocol )3个要害模块构成。 行使接口描写说话编写的工具接口,使得与说话无关的独立性成为也许。 IDL 使得全部 CORBA 工具以一种方法被描写,仅仅必要一个由说话( C/C++ 、 CORBA 或 Java )到 IDL 的“桥梁”。 CORBA 工具的互通要以工具哀求署理为中介,这种互通讯可以在多种风行通讯协议之上实现。在 TCP/IP 上,来自于差异开拓商的 ORB 用 IIOP 尺度协议举办通信。 为了保持 CORBA 的贸易中立性和说话中立性,必需有一此中介,存在于像 C++ CORBA 处事器代码和 Java CORBA 客户机这样的实体中间,这就是 IDL 。一个底层工具的多少相干要领和属性被 IDL 集入一个单一接口。一旦 IDL 接口界说完成,它可以以 Sub 码或框架代码的形势编译成所选用的说话。在全部的 ORB 中都有 IDL 编译器。 IDL 差异于其余的面向工具措施计划说话,我们不能用它指定所界说的类或要领的详细实现。 IDL 是一种描写性说话而不是编程说话,用它界说底层工具接口,使得接口界说与工具实现分隔。 IDL 编译器编译 IDL 代码,天生响应说话的头文件及客户署理和处事器署理工具。 CORBA 技能类型操作了当今软件技能成长的最新成就,在基于收集的漫衍式应用情形下实现应用软件的集成,使得面向工具的软件在漫衍、异构情形下实现重用、可移植和互操纵。其特点如下: ① 在 CORBA 类型中引入了署理( Broker )的观念,一个署理至少可以完成对客户方提出的抽象处事哀求的映射;自动发明和探求处事器;自动设定路由,实现随处事器方的执行。 ② 实现客户与处事工具的完全分隔,客户不必要相识处事工具的实现进程以及详细位置。 ③ 应用措施间的同一接口。 CORBA 提供软总线机制,这是体系界说的一组接口类型,使得在任何情形下,回收任何说话开拓的软件只要切合接口类型的界说,均能集成到 CORBA 体系中。 ④ CORBA 回收面向工具的软件实现要领开拓应用体系,实现工具内部细节的完备封装,保存工具要领的对外接口界说。 ⑤ 分层的计划原则和实现方法。 CORBA 类型只是针对 OMA 系统布局中的 ORB 拟定的家产尺度,而面向工具界说则可以在 OMA 的应用工具或应用开拓情形中慢慢分层界说和实现。 5 COM/DCOM 技能类型 COM ( Component Object Model ,组件工具模子)是 Microsoft 软件组件尺度,是结构二进制兼容软件组件的类型。 COM 的系统布局包罗同一数据传输、耐久存储和智能定名、 COM 焦点等。个中 COM 焦点包罗处事节制打点、接口署理、接口基和 COM 库。 COM 焦点界说了 COM 工具与行使者怎样通过二进制尺度接口举办互换的规格声名。耐久存储通过 Istorage 和 Istream 接口提供一个“文件体系”。智能定名通过工具实现接口,行使户可以在往后从头毗连一个指定的工具实例,而且使工具实例仍保持原本的状态,其它还提供生涯它们名字和其余耐久信息的机制。 COM 库提供对全部客户及组件都很是有效的组件打点处事。 DCOM 是 COM 的漫衍式扩展, Microsoft 把 DCOM 作为开拓 Internet 和组件的基本。当客户和组件位于差异呆板时, DCOM 用 TCP/IP 协议等代替 COM 中的当地历程间通讯 LRPC ,从而对位于 Internet 差异呆板上的组件工具之间的彼此通信提供了透明的支持。 COM/DCOM 技能具有以下特点: ① 说话无关性。 COM 类型的界说不依靠于特定说话,它回收的是一种二进制代码级的尺度,而不是源代码级的尺度。 ② 可重用性。 COM 重用性是成立在组件工具的举动方法上的,它指示了 COM 工具怎样重用已有的 COM 工具成果。有两种途径:海涵和聚合可实现 COM 重用性。 ③ 位置透明性。组件从一台计较机转移到另一台计较机仅涉及到从头设置的题目,不涉及到一个大的开拓项目。 6 结论 中间件的方针就是袒护底层的异构性,利便编程。因此抱负的中间件应该提供对多种措施计划说话的支持,有精采的跨平台手段,同时还具有收集透明性、位置透明性和会见透明性等特点。 支持跨平台手段是 CORBA 的一大特色。基于 CORBA 开拓的应用,完全停止了底层平台的纷歧致所带来的题目,它支持 Unix 、 OS/2 等浩瀚平台。 EJB 是依靠于 Java 说话的技能,因为 Java 的平台无关性,使得 EJB 可以运行在差异的开拓平台上。 COM/DCOM 仅实现了 32 位 Windows 操纵体系平台,这使得跨平台支持带来了坚苦。 在说话支持方面, CORBA 一开始就计划了 IDL 转换尺度说话,以是对付大大都面向工具的说话 CORBA 都支持。 COM/DCOM 也具有说话无关性,只有 EJB 是基于 Java 说话的,但因为 Java 的普及行使, EJB 技能也获得越来越多开拓者的喜欢。 总之, 3 种中间件技能都有其上风, Java 因为平台无关性的上风明显,成为抱负的 Internet 技能;而 Windows 平台的普及行使也使 COM/DCOM 具有深挚的基本; OMG 组织在 10 几年来一向在为本身的组件软件成立尺度,并且已被许多组织和公司回收。对付异构情形下的企业应用开拓, CORBA 和 EJB 有着明明的上风,而且 CORBA 和 EJB 所依靠 Java 技能可以很好的互补。 CORBA 处理赏罚收集透明性, EJB 处理赏罚实现透明性。由此看来, CORBA 和 EJB 技能细密团结是此后多层漫衍式体系成长的一大趋势。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |