⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dcom实现分布式应用(五).htm

📁 分布式应用
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<BR><BR>图15 
用于容错的分布式组件<BR><BR>另一技术经常被称为“热备份”。同一服务器组件的两个复本并行地在不同的机器上运行,它们处理相同的信息。客户进程能够明确地同时连接这两台机器。DCOM的“分布式组件”通过将处理容错性的服务代码放到客户端使得以上过程对用户应用完全透明。另一种方法是使用另一台机器上运行的一个协作组件,由它代表客户将客户请求发送给那两个服务器组件。 
当错误发生时试图将一个服务器组件转移到另一台机器上经事实证明是失败的。Windows 
NT组的最初版本使用了这一方法,当然它可以在应用级完成。DCOM的“分布式组件”使得完成这一机能更容易了,并且它对用户隐蔽了实现细节。 
DCOM使得完成高级的容错技术变得更为容易。使用DCOM提供的部分在客户进程中运行的分布式组件技术能够使解决问题的细节对用户透明。开发者无需改动客户组件,甚至客户机进行重新配置就能够增强分布式应用系统的容错性。 
轻松配置 
如果不容易安装和管理的话,即使是最好的应用系统也是没有用的。对于分布式应用来说,能够集中管理和尽可能简单的客户安装过程是非常关键的。同时,提供一些办法使系统管理员能够在潜在的错误造成任何损害之前尽可能早的发现它对于分布式应用也是非常必要的。 
DCOM提供了什么技术能够让一个应用更加易于管理呢?<BR><BR>安装<BR>简化客户端安装的一种普遍方法可以概括为一个词“稀薄的客户”,意思是驻留在客户端的机能越少,安装以及可能发生的维护问题也就越少。 
然而,客户组件越“稀薄”,整个应用的用户友好度就越低,对网络和服务器的需求也就越高。稀薄的客户还不能充分利用当今桌面办工系统所能得到的强大的计算能力,而由于诸如字处理软件以及电子表格软件这些桌面生产应用系统本身就具有统一而庞大的特性,所以大多数用户对于这种系统的强大的计算能力的需求也不会减弱。因此在正确的级别实现“浓厚”对于分布式应用的设计来说是一个非常重要的决定。DCOM通过让开发者甚至管理员来选择每个组件的位置来促进配置的简单性和灵活性之间的平衡。可以通过对配置的简单改动使同一个事务组件(例如数据登录检查组件)分别在服务器和客户端执行。应用能够动态地选择所使用的用户界面组件(服务器上的HTML产生器或者客户端的ActiveX控件)。 
保持“肥胖的”客户的一个最大的问题是将这些客户更新到最新版本的问题。现在通过对代码下载的支持,微软的Internet Explorer 
3.0提供了解决这一问题的一个非常优雅的办法。只要用户在浏览一页页面,微软的Internet 
Explorer就会检查页面中所使用的ActiveX控件,并在必要时自动对其进行更新。应用也可以在不明确使用浏览器的时候使用这一被微软直接支持的特性(ActiveX的CoCreateClassFromURL函数)。 
在Windows NT 
5.0中,代码下载的概念将被扩展到本地COM类库中。这一类库将使用扩展目录来储存组件的配置信息和到实际代码的索引,它改变了当前使用的本地登记概念。这个类库将向Intranet(扩展目录)和Internet(代码下载,Internet路径搜索)提供代码仓库,并使它们对已存在的应用完全透明。 
安装和更新服务器组件通常不是一个严重的问题。然而,在一个高度分布化的应用中,同时更新所有的客户一般来说是不太可能的。如第一部分中“功能的发展:版本化”部分所述的DCOM的健壮的版本化支持允许服务器在保持向后兼容的基础上加入新的功能。服务器组件既可以处理旧客户进程,又可以处理新客户进程。一旦所有的客户都被更新,组件就可以停止对新客户所不需要的功能的支持。 
使用代码下载技术以及以后它的扩展技术,类库、管理员能够有效而安全地集中安装和更新客户,并能在不用削减太多功能的情况下将“肥胖的”客户变为灵巧的客户。DCOM对于健壮性版本化的支持使得无需先更新所有客户就可以更新服务器程序。 
<BR><BR>管理<BR>安装和更新客户组件的部分工作是对这些组件的配置和对这些配置的保持。DCOM所涉及的最重要的配置信息是运行客户所需组件的服务器的消息。 
使用代码下载和类库技术,我们可以在一个集中位置管理配置信息。对配置信息和安装包的一个简单改动就能够透明地更新所有的客户。 
管理客户配置的另一种技术是“负载平衡”部分所描述的指示组件技术。所有客户都连接到指示组件,指示组件中包含所有的配置信息,它向每个客户返回合适的组件。只需改动指示组件就可以改变所有的客户。 
一些组件,特别是服务器组件,需要附加的特殊组件配置。这些组件能够使用DCOM来显示允许改变配置和恢复现有配置的界面。开发者可以使用DCOM的安全性底层框架使得这些界面只能被有合适访问权限的管理员使用。对于加速开发过程的工具的广阔的支持使我们能够很容易地写出使用管理界面的前端界面。同样的界面可以用诸如Visual 
Basic Script或Java Script这样的简单剧本语言写的代码来完成自动的配置变换。 
代码下载和类库技术可用于集中配置组件,而指示组件方法是一种使配置信息更加集中化的方法。某些组件可以使附加的DCOM界面只能被管理员看到并使用,这就使同样的DCOM底层结构能够被用来进行组件的配置和管理。 
<BR><BR>协议无关性<BR>许多分布式应用需要集成到一个顾客或者公司的现存的网络结构中。这时可能需要一个特殊的网络协议,而这需要更新所有潜在的客户,这在大多数情况下是不可能的。因此应用的开发者需要小心地是应用对下面的网络底层结构尽可能的保持独立性。 
DCOM使得这一过程变得透明了:因为DCOM能够支持包括TCP/IP、UDP、IPX/SPX和NetBIOS在内的任何一种传输协议。DCOM提供了基于所有这些无连接和面向连接的协议的一个安全性框架。 
开发者能够轻易地使用DCOM提供的特性并可以确信他们的应用系统是完全对协议无关的。 
<BR><BR>平台无关性<BR>分布式应用系统经常要把不同的平台集成到客户端以及服务器端。开发者经常要面对那些平台之间在许多方面的重要差别:不同的用户界面原理,不同的系统服务甚至是整套网络协议的不同。这一切使得使用和综合多平台变得十分困难。 
这个问题的一个解决办法是所有平台重最特殊的一个并使用一个抽象层来保存基于所有平台的简单代码。这一方法被传统的跨平台开发框架系统所使用,例如Java虚拟机环境。它的实现依赖于对于所有可支持平台都适用的一个代码集甚至二进制代码。 
然而,这种简单化是要付出代价的。抽象层的引入带来了额外的开支,并且不能使用与平台有关的一些强大的服务和优化。对于用户界面组件来说,这一方法意味着与别的应用在界面上相似程度会非常少,从而导致使用起来更加困难以及要花更多的钱来进行培训。对服务器组件来说,这一方法对任一平台来说牺牲了协调重要组件的执行性能的能力。 
DCOM技术对于所有的跨平台开发工作都是公开的。它不排斥基于特殊平台的服务和优化,也不会专门适用于某些系统。 
DCOM结构允许将平台无关性框架和虚拟机环境(Java)以及高执行性能、平台优化的顾客组件综合到一个分布式应用中。<BR><BR>平台二进制标准 
<BR>从某一方面来说,DCOM定义了一个平台二进制标准,因此顾客和开发者可以将使用由不同卖主提供的工具开发的组件互相混合和匹配起来,甚至可以在不同的DCOM运行库中使用它们。虽然DCOM运行库的细节可能随着完成时间的不同而改变,但是运行库和组件以及组件之间的相互作用是标准化的。与其它更加抽象的对象摸型不同,使用DCOM可以将一个二进制版本的组件分布到一个运行着所有其它组件和运行库的平台上去。 
<BR></P></DIV></CENTER></DIV></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -