新闻与评论产品介绍成功案例市场发展技术白皮书产品对比下载Windows Family 分布式组件对象模式的概念及应用
分布式组件对象模式的概念
随着Java程序语言的出现和Internet的发展,组件软件技术再次成为IT管理人员关注的焦点。 组件软件技术的基本思想是:将大而复杂的软件应用分成一系列的可先行实现、易于开发、 理解和调整的软件单元,也就是组件(components)。以此为基础的软件解决方案,效率高, 花费也低。
这种方案有利于在整个计算机工业形成软件开发的规模效益。采用组件结构开发软件的优势在于:
缩短开发时间:由于编程人员可将先行开发的部件装配到新的程序中, 从而加速了新程序的开发.
降低集成费用:在将组件集成为一个完整的方案时, 不同开发商采用了一致的标准接口, 减少了特殊的定制工作.
开发更具灵性:只需简单调整全部应用的一些组件, 即可为企业不同领域的应用提供特定的解决方案.
降低软件维护费用:各组件的软件功能是相对独立的, 在维护和升级一个组件时, 不必变动整个应用. 降低了费用, 维护简便.
分布式组件结构是将这些优势应用于更广泛的多用户应用中. 分布式组件对象模式(DCOM) 的主要优点和作用是:
分布式组件对象模式是在目前应用最广的组件技术的基础上发展而来的.
DCOM简单说就是组件技术(COM)加上一条较长的线(COM with a longer wire), 即组件对象模式的基层扩展. 它是微软ActiveX的核心对象技术. 微软和主要的工具开发商 Borland、Sybase的Powersoft、Symantec、Oracle、IBM和Micro Focus等已经开始在销售的开发工具中包含了ActiveX组件. 这些工具和应用自动地支持DCOM, 使DCOM获得了最广范的支持. 此外, 1000多种现有商业软件组件将支持DCOM, 目前也已经可供开发人员使用.
分布式对象技术是在Internet上扩展组件应用的最好的网络技术.
由于是一种ActiveX技术, DCOM可以本地化地与Internet技术如TCI/IP、Java语言和HTTP网络协议协同工作, 并提供对象接入, 使各种商业应用在Web上畅通无阻. 不需任何特殊通信代码或附加的诸如" 远程类" 就可以支持目前的Java.
分布式组件对象技术是一项开放跨平台的技术.
现在微软公开发放DCOM技术许可证给采用其它主要操作系统的软件公司, 包括基于 Uinx 系统的多种应用。AG公司目前 已经采用 DCOM运行于基于 Solaris的操作系统。此外,微软正寻求与 Internet标准制定 实体,包括 IETF和 W3C合作,促使 DCOM成为一种通用的 Internet 技术。
总之,有最广泛的用户安装基础、本地化的支持 Internet协议和开放支持多种平台是 DCOM的主要优势所在。由此也不难看出,不必放弃现有 系统、人员和设备的投资,用户就可以获得现代组件应用结构的多种益处。
组件与桌面系统的开发
基于组件的开发是当今桌面系统的主流技术。DCOM源于微软的对象技术。在过去的十年中,对象技术 的发展路径是从DDE (动态数据交换)、OLE(对 链接和 嵌入)、COM(组件对象模式 ) 和ActiveX。
在这一技术的发展过程中始终遵循着一个基本思想:每一阶段 都使建立大的应用程序的复杂性降低,并且让用户享有更 多的功能。由于开发人员可以利用 已有的组件和它们的接口,省去了许多测试时间和集成工作,降低了开发费用。建立在组件 基础上的应用较传统的整体式应用更易 修改系统故障和升级。
例如:所谓的"2000年问题 "(许多大企业正在忙于修改 他们的系统,以避免在新的千年期(2000〕年到来时,系统停止运行〕是一个应用设计的缺陷,如果传统 应用是用一个通用时间组件写成的,这 种修改只是一个范围很小的修改,简单,花费也少。
多数微软的Windows操作系统开发 商都了解这些特 点,并且采用了ActiveX组件结构。全球有三百多万专业程序员接 受了ActiveX及OLE、COM和DCOM 技术的培训。有数 百家独立软件公司推出了成千上万的软件组件。这些商业软件组件可以被开发人员用于微软的Visual Basic、PouwerBuilder、Micro Focus公司的Visual Object COBOL和其它常用工具软件。
ActiveX在桌面系统最重要的商业 优势通过 网络自动地延伸到DCOM:
语言中立
开发人员可以用任何语言建立ActiveX组件,用COBOL建立的ActiveX可以与用Java建立的其它组件协同工作。
工具软件支持
多数主要软件工具开发商支持ActiveX。
广泛的工业支持
有成千上万 先期开发的组件上市可供选择。
便利的技术支持
全球有大 批的专业开发人员目前正致力于ActiveX领域的工作。
组件与网络
组件应用的逻辑界限不再是一 台机器,商业应用要求将组件开发的优势扩展到更广泛的多用户应用环境。
企业希望通过运行于多种硬件平台的共享应用 获得组件软件能迅速的再利用、广泛的工业基础和数以万计可供选择的组件等优势。这类应用即所谓的"三层''或"多层"应用,这里,应用逻辑层、展示服务层、商业服务层、信息检索层和管理服务层被划分为不同的组件,通过网络直接相互通信。对于实际用户,这些应用似乎是他们现有的桌面系统环境的无缝扩展。对IT管理人员来说,是为他们提供了将 经济而灵活的桌面系统开发应用于一个更广泛环境中的机会。
例如:开发一套新的基于多层应用并采用组件设计的销售管理系统,这一应用包括多种订货组件,每一种都是为一种独立的销售渠道而设计的。这些组件都 采用一个通用的、单独的税率计算组件运行在一个服务器上。当税法变动时,公司只需变动一下在服务器上的税率计算组件,不必对每一渠道的订货组件进行改动。
DCOM是一种多层应用的理想技术,它可以使ActiveX的组件在网络上工作,使开发人员 很容易地跨越不 同 机器的界限建立系统。在上例中,开发人员不必担忧网络程序和系统匹配就可以把用不同语言写成的组件集成到一起。
使用组件建立分布式应用可以降低费用和开发的复杂 性。DCOM巧妙地利用企业已经投入在ActiveX的费用,为企业带来更大的利益。其方法如下:
为桌面系统开发人员提供了新的发展方向。
DCOM使数以百万计的现有ActiveX程序员致力于建立服务器组件,让桌面系统的各 部分实现相互 间的操作。从而拓宽了这些开发人员的专业目标。
为用户和服务器端提供通用组件模式。
企业内的用户端和服务器端的开发人员合二为一,有利于降低培训、购买工具和 技术支持的费用。
提供多平台支持。
DCOM设计运行于Windows 95、Windows NT、Macintoch、和Unix等主要操作系统,为企业提供一个跨越各种IT环境的通用应用结构体系的基础,降低了集成费用和减少了集成的复杂性。
提供通用和开放的标准
DCOM是在Open Group Distrbuted Computing Environrment RPC mechanism之上的一层协议。
组件与 Internet
商业实际应用要求使用Internet协议将公用和专有 网络上的基于组件的应用连接起来,在Web上充分显示商业应用的本质。
简明普及的Internet协议如HTTP是跨越不同机器界限将组件应用连接起来的理想技术。HTTP易于编程,具有跨越不同平台和支持通用命名服务的特性。Java语言 潜在的机械化特性正适应了在Internet上建立分布式组件应用。
例如:许多企业已经建立了投资管理系统,这些系统依靠基于Internet的数据流,如发布股票信息的PointCast。这是一种在浏览器和Wcb技术基础上, 费用低廉的将现有的服务和应用集成 入户(in house)的解决方案。开发人员通过Internet接入远程组件通信服务,增强入户解决方案的功能,花费也不高。
DCOM使组件应用运行于Internet。微软目前正在与Internet标准制定实体,IETF和W3C合作,让DCOM成为Internet上的一种开放技术。
DCOM目前正逐渐成为一种用于商业应用的主流Internet技术,主要原因是:
DCOM传输中立
DCOM允许组件通过任何网络传输,无论是连接为目的的或是非连接的,包括TCP/IP/、UDP/IP、IPX/SPX、Apple Talk和HTTP等相互通信。
DCOM提供目前分布式的Java
由于DCOM是语言中立的,Java applets可以在Internet上通过DCOM直接实现相互通信。
DCOM是发展中的技术
除了支持Java,DCOM也允许用其它语言如C、COBOL、Basic和Pascal等编写的组件在Internet上相互通信,为目前各种应用支持Web技术 提供了一种发展途径。
DCOM是用于浏览器和Web服务器的通用组件
由于ActiveX可嵌入基于浏览 器的应用,DCOM使分布式 Internet应用建立于一个更丰富的应用 基础结构之上。
DCOM是安全的
DCOM将基于认证的安全应用与一个更 高水平的基于Windows NT的安全应用结为一体,综合了两者的优点。
DCOM是以标准化为基础的
DCOM是基于Open Group DCE RPC的一种开放的、应用广泛的通信技术。DCOM的协议扩展已经递交了一份Internet草案。
组件与企业
由于分布式应用是由简单的组件构成 并通过Internet协议形成,一个崭新的为企业平台上的组件应用服务系列将出现
任何 组件软件结构的一个关键目标是区分出商业逻辑,例如:从实施逻辑看,一种税务是怎样计算税率的?是否税务组件可以运行于浏览器或多处理服务器上?因为同一 种组件在同一台计算机上或通过HTTP在Internet上,可以进行相互通信,DCOM更进一步地扩展了这种区分。
但是,组件自身并不能解决全部企业应用的复杂问题。
例如:有一项工作要求尽快地建立、开发出一项顾客订货应用,其中包括五种不同的功能-计税、顾客信用查证、货物管理保证期更新和订货记录。这一应用是按五种独立的组件建立的,运行于一台Web服务器上,通过浏览器工作。开发人员如何处理例外?系统故障?网络运行中断?峰值性能?
如果企业被迫手工完成本来需要在 线生产系统自动 执行的关键任务 服务,基于组件开发的两个主要目标-及时上市和降低开发费用,当然无法实现。
针对企业对分布式组件结构的要求,在不牺牲开发速度和不增加费用的情况下,微软正在将DCOM集成到ActiveX服务器上,即加速在Inernet和企业的Intranet上的基于组件应用开发的技术服务。ActiveX服务器 一些基本服务有:
事故处理
在系统发生故障时,基于组件应用的传统的还原和恢复功能。
排队
使组件通信与可靠的存储和发送排队结为一体,用以防备网络偶然中断时组件应用仍然能有序的工作。
服务器脚本
可很容易的将服务器上的组件应用与基于HTML的Internet应用结为一体。
兼容传统的操作系统
使组件应用与传统的操作系统包括运行于大型机的CICS和IMS结为一体。
采用公开的Internet协议建立的ActiveX服务器技术将在1996年推出。
DCOM 推出时间表
1996年夏季DCOM将首次与Windows NT Server 4.0和Windows NT Workstation 4.0一起推出。
1996年第三季度可从Internet上下载 DCOM的Windows 95版。
1997年第一季度可从Internet上下载DCOM的Macintoch版。
1996年第四季度可从Internet上下载DCOM的Solaris.
1997年第一季度推出DCOM在Internet和企业平台上的其它应用。