ina-pubcoM MIsR BI# BIRE/B EIPAR413 下载 消息排队服务器(MSMQ)通过在应用程序之间建立信息传送机构,使得集成应用程序变得更 为容易。这允许开发人员创建可靠的应用程序,为连接的和不连接的客户工作。MSMQ可 其他消息排队产品进行无缝互操作,如IBM的 MQSeries (3)网络服务 WindOws dna应用程序的应用程序服务需要一种与客户表现层交互的方法。这种方法就 是超文本传输协议,微软的网络服务器(也就是IS)已经提供了使用这个协议的服务。事实上, IS不仅支持传输静态网页到客户,也可用于与ASP的集成动态地创建客户显示。 3.数据服务 通用数据访问是微软为在企业之间传递信息而设计的,能对不同种信息源提供高质量的 访问,包括关系数据、非关系数据,并提供一个使用简便的既可单独作为工具又可单独作为 语言的编程界面。UDA存储数据费用低、耗时少,也不需要特制一种程序。UDA建立在广泛 工业支持的开放式工业规范上,可运行于所有已建立的数据库平台上。提供数据服务的两个 基本组件是ADO和 OLE DB,这两者都已经在本书中介绍过 13.1.4网络结构 网络结构是HTML格式化页面的组合架构,分布在网络服务器和客户计算机上。所使用 查看用的工具称为浏览器。从本质上看,包含几千页的服务器与只有几页的服务器没有什么 本质不同,把几千页以某种形式链接在一起就形成网站,再加上一些附加逻辑,网站就变成 了一个网络应用程序。 1.网页 网络交互的基本单元就是网页本身,网页是用HTML编写的文本文件。根据浏览器的请 求,网页从网络服务器发送到浏览器,浏览器先从语法上分析HTML文件中的信息,所得到 的用户界面表现在浏览器上。网络服务器的任务是等待客户端的请求,分析并决定客户端需 要的网页,从服务器的存储区域中检索这个文件,然后将文件传输到客户端。除非将信息放 入日志文件中,否则服务器会忽略所有关于传输文件到客户端的事情。就是这种“无连接” 性使网络服务器有了可扩充性。但是,在没有额外支持的情况下,创建一个有意义的应用程 序变得很困难。 2.网站 从某种意义上说,一个网站由一系列相关联的网页组成。通常一个网站是指存在于一个 服务器上或者一个服务器文件夹里的所有网页。例如,在www.wroxcom服务器上,所有的网 页都可以认为是这个网站的一部分。网站上网页相互联系主要依靠这个网站内的每个网页的 链接来实现的。以这种方式组成网站的网页保持网站的分层结构。这些网页仍受到网络服务 器结构的约束,因为服务器不保留来自特定客户的一系列请求的信息,所以这样构成网站的 系列相关网页看起来更像是应用程序,但还是缺少一些组件。 网络应用程序 Windows dna应用程序是一个传统意义上的应用程序,因为它们向应用程序的用户提供 服务。这两种应用程序的创建方式不同,组件构成也不同。传统应用程序在开发过程中需要 套特殊的文件,但是分布不同的输出。例如: isual basic应用程序有一个vbp项目文件 多个frm、cls和bas文件和一系列构成应用程序项目的OCX组件。在程序分布之前,这些文
消息排队服务器 ( M S M Q )通过在应用程序之间建立信息传送机构,使得集成应用程序变得更 为容易。这允许开发人员创建可靠的应用程序,为连接的和不连接的客户工作。 M S M Q可与 其他消息排队产品进行无缝互操作,如 I B M的M Q S e r i e s。 (3) 网络服务 Windows DNA应用程序的应用程序服务需要一种与客户表现层交互的方法。这种方法就 是超文本传输协议,微软的网络服务器 (也就是I I S )已经提供了使用这个协议的服务。事实上, I I S不仅支持传输静态网页到客户,也可用于与 A S P的集成动态地创建客户显示。 3. 数据服务 通用数据访问是微软为在企业之间传递信息而设计的,能对不同种信息源提供高质量的 访问,包括关系数据、非关系数据,并提供一个使用简便的既可单独作为工具又可单独作为 语言的编程界面。U D A存储数据费用低、耗时少,也不需要特制一种程序。 U D A建立在广泛 工业支持的开放式工业规范上,可运行于所有已建立的数据库平台上。提供数据服务的两个 基本组件是A D O和OLE DB,这两者都已经在本书中介绍过。 13.1.4 网络结构 网络结构是 H T M L格式化页面的组合架构,分布在网络服务器和客户计算机上。所使用 查看用的工具称为浏览器。从本质上看,包含几千页的服务器与只有几页的服务器没有什么 本质不同,把几千页以某种形式链接在一起就形成网站,再加上一些附加逻辑,网站就变成 了一个网络应用程序。 1. 网页 网络交互的基本单元就是网页本身,网页是用 H T M L编写的文本文件。根据浏览器的请 求,网页从网络服务器发送到浏览器,浏览器先从语法上分析 H T M L文件中的信息,所得到 的用户界面表现在浏览器上。网络服务器的任务是等待客户端的请求,分析并决定客户端需 要的网页,从服务器的存储区域中检索这个文件,然后将文件传输到客户端。除非将信息放 入日志文件中,否则服务器会忽略所有关于传输文件到客户端的事情。就是这种“无连接” 性使网络服务器有了可扩充性。但是,在没有额外支持的情况下,创建一个有意义的应用程 序变得很困难。 2. 网站 从某种意义上说,一个网站由一系列相关联的网页组成。通常一个网站是指存在于一个 服务器上或者一个服务器文件夹里的所有网页。例如,在 w w w. w r o x . c o m服务器上,所有的网 页都可以认为是这个网站的一部分。网站上网页相互联系主要依靠这个网站内的每个网页的 链接来实现的。以这种方式组成网站的网页保持网站的分层结构。这些网页仍受到网络服务 器结构的约束,因为服务器不保留来自特定客户的一系列请求的信息,所以这样构成网站的 一系列相关网页看起来更像是应用程序,但还是缺少一些组件。 3. 网络应用程序 Windows DNA应用程序是一个传统意义上的应用程序,因为它们向应用程序的用户提供 服务。这两种应用程序的创建方式不同,组件构成也不同。传统应用程序在开发过程中需要 一套特殊的文件,但是分布不同的输出。例如: Visual Basic应用程序有一个 . v b p项目文件, 多个. f r m、. c l s和. b a s文件和一系列构成应用程序项目的 O C X组件。在程序分布之前,这些文 第1 3章 组件和网络应用程序结构计计413 下载
414 ASP3高级编程 Chinapub coM 下载 件被编译成可执行文件,可执行文件的执行不需要开发过程中的源代码文件。 另一方面,基于脚本的应用程序是由一系列文件组成的,这些文件在开发和运行期间相 同,没有编译成可执行文件。例如:网络项目中hm、asp和dl件是传输给网络服务器的 相同文件。只有当浏览器向网页发出请求时,这些网络文件中的源代码或脚本才在客户端或 服务器上执行。建立这些应用程序依赖于万维网(WWW)的结构,为使这些文件的功能像应用 程序那样,需要增加一些复杂性和功能。 4.网络应用程序设计 为了建立一个网络应用程序,开发人员必须考虑一些程序设计和开发的新知识 Windows dna的灵活性允许各种客户访问各种服务,我们将重点放在一个网络应用程序上。 在一个网络应用程序内,将浏览器作为一个主要的用户界面来使用。在网络应用程序内的信 息将使用HTTP协议从服务器传输到客户端。应用程序服务器将是微软的ISS,既执行网络功 能,也执行应用程序服务器功能。最后,我们的业务和数据访问逻辑将会被封装在COM+组 件内,作为链接应用程序的通道 (1)浏览器作为用户界面 对一个网络应用程序来说,用户界面是表现在网络浏览器内的,这就意味着客户显示形 式是浏览器增强型或者浏览器依赖型。所选应用程序的类型应该以用户安装的浏览器为依据, 如果能保证大多数用户都使用某一特定的浏览器级别,那么就该考虑一下这一级别浏览器的 特征,如果有许多不同种类的浏览器在同时使用,就只能支持一种浏览器依赖型客户显示形 式。使用ASP传输应用程序的一个优点是能判断出当前正在访问应用程序的用户使用的是什 么类型的浏览器,这已经在第6章625节中介绍。通过了解当前用户所用的浏览器的类型,可 动态改变客户的显示形式以支持浏览器的增强功能 (2)HTTP传输协议 客户与服务器之间的通信层对应用程序的设计和实现来说是至关重要的。超文本文件传 输协议(HTTP)规定了服务器如何接受和处理客户的请求,以及信息如何发送回客户。根据所 支持的客户显示类型的类型,使用这个协议可能有不同类型的信息传输。由于对浏览器依赖 型客户的基本支持,HTTP传输的信息限制为构成网页的HTML、图像、信息载体cookie以及 一些客户端脚本。一个增强型客户可以使用一些特殊特性,如远程数据服务( Remote data Services)或在HTTP上的COM,通过HTTP进行通信。但是这些支持依赖于客户端浏览器的功 能。在任何一种情况下,HTTP协议没有客户与服务器之间长期连接的概念。 3)IS和ASP作为应用程序服务器 微软的IS(作为网络服务器)与ASP(作为应用程序服务器)的组合能为网络应用程序提供应 用程序组件。对于为显示静态网页服务的网页和网站,IS具有提供信息的功能。但当网络应 用程序需要动态显示信息时,就必须把可生成动态页面的IS网络服务功能与ASP对象集成功 能结合起来,传输更稳固的动态网络程序。ASP脚本功能可以支持脚本内的业务逻辑,链接 业务逻辑组件,直接经ADO访问数据库,并且可使用数据组件检索信息。 (4)COM+作为通道 组件服务器的COM+功能使 Windows dna应用程序能基于组件进行设计。然而一个功能 齐全的应用程序可以在ASP脚本和HTML外构建,当业务逻辑和数据访问被分离开并放进组件 后,一个更稳固的可扩充的应用程序开始出现。将业务和数据访问逻辑放入执行前编译好的
件被编译成可执行文件,可执行文件的执行不需要开发过程中的源代码文件。 另一方面,基于脚本的应用程序是由一系列文件组成的,这些文件在开发和运行期间相 同,没有编译成可执行文件。例如:网络项目中 . h t m、. a s p和. d l l文件是传输给网络服务器的 相同文件。只有当浏览器向网页发出请求时,这些网络文件中的源代码或脚本才在客户端或 服务器上执行。建立这些应用程序依赖于万维网 ( W W W )的结构,为使这些文件的功能像应用 程序那样,需要增加一些复杂性和功能。 4. 网络应用程序设计 为了建立一个网络应用程序,开发人员必须考虑一些程序设计和开发的新知识, Windows DNA的灵活性允许各种客户访问各种服务,我们将重点放在一个网络应用程序上。 在一个网络应用程序内,将浏览器作为一个主要的用户界面来使用。在网络应用程序内的信 息将使用H T T P协议从服务器传输到客户端。应用程序服务器将是微软的 I S S,既执行网络功 能,也执行应用程序服务器功能。最后,我们的业务和数据访问逻辑将会被封装在 C O M+组 件内,作为链接应用程序的通道。 (1) 浏览器作为用户界面 对一个网络应用程序来说,用户界面是表现在网络浏览器内的,这就意味着客户显示形 式是浏览器增强型或者浏览器依赖型。所选应用程序的类型应该以用户安装的浏览器为依据, 如果能保证大多数用户都使用某一特定的浏览器级别,那么就该考虑一下这一级别浏览器的 特征,如果有许多不同种类的浏览器在同时使用,就只能支持一种浏览器依赖型客户显示形 式。使用A S P传输应用程序的一个优点是能判断出当前正在访问应用程序的用户使用的是什 么类型的浏览器,这已经在第 6章6 . 2 . 5节中介绍。通过了解当前用户所用的浏览器的类型,可 动态改变客户的显示形式以支持浏览器的增强功能。 (2) HTTP传输协议 客户与服务器之间的通信层对应用程序的设计和实现来说是至关重要的。超文本文件传 输协议( H T T P )规定了服务器如何接受和处理客户的请求,以及信息如何发送回客户。根据所 支持的客户显示类型的类型,使用这个协议可能有不同类型的信息传输。由于对浏览器依赖 型客户的基本支持, H T T P传输的信息限制为构成网页的 H T M L、图像、信息载体 c o o k i e以及 一些客户端脚本。一个增强型客户可以使用一些特殊特性,如远程数据服务 (Remote Data S v r v i c e s )或在H T T P上的C O M,通过H T T P进行通信。但是这些支持依赖于客户端浏览器的功 能。在任何一种情况下,H T T P协议没有客户与服务器之间长期连接的概念。 (3) IIS和A S P作为应用程序服务器 微软的I I S (作为网络服务器)与A S P (作为应用程序服务器)的组合能为网络应用程序提供应 用程序组件。对于为显示静态网页服务的网页和网站, I I S具有提供信息的功能。但当网络应 用程序需要动态显示信息时,就必须把可生成动态页面的 I I S网络服务功能与 A S P对象集成功 能结合起来,传输更稳固的动态网络程序。 A S P脚本功能可以支持脚本内的业务逻辑,链接 业务逻辑组件,直接经A D O访问数据库,并且可使用数据组件检索信息。 (4) COM+作为通道 组件服务器的C O M+功能使Windows DNA应用程序能基于组件进行设计。然而一个功能 齐全的应用程序可以在A S P脚本和H T M L外构建,当业务逻辑和数据访问被分离开并放进组件 后,一个更稳固的可扩充的应用程序开始出现。将业务和数据访问逻辑放入执行前编译好的 414计计ASP 3 高级编程 下载
inapub.coM 8138 RIP RIMRIESBEYPAR 415 下载 组件里,应用程序的性能就会改善。并且,随着性能的改善,应用程序有效支持的客户数量 就可增加。 13.2组件 谈到组件和基于组件的应用程序时,了解什么是组件就显得非常重要。在本书中,我们 已见过一些组件在ASP中使用,ADO就是一系列支持访问数据源的组件。ASP3.0版的六个内 置组件允许开发人员访问网络应用程序的某些部分。对可扩展的网络应用程序来说,组件的 概念是非常重要的 13.21组件定义 组件是包含可改变数据形式的代码的对象,可通过一系列可用的特定公共服务 对此代码进行访问。 以下是对组件的更直接的定义。 从一种更实际的意义上理解,组件是代码的封装,这些代码执行应用程序的一 些功能。 这个功能可能是业务规则的处理,如销售税的计算,也可能是从应用程序的数据库检索 某些信息。组件的关键特征是当创建组件时,组件的代码和与组件相关的信息一起打包。在 这种方式下,如果同时使用多种版本的同一组件,每一个组件的信息都与其他组件的信息保 持独立,不存在信息之间发生混乱的问题 另外,根据组件的工作类型,组件可以由其接口来定义。为了了解关于接口的详细资料 必须先了解COM。 1322cOM和cOM+ COM指组件对象模型( Component Object Model) coM是面向对象范型的一个分支,是一个基于二进制标准的规范,这个标准规 定如何通过接口进行重复使用 COM是由微软开发的对象模型,可在所有的 Windows平台上执行。它构成所有 Windows 应用程序的基础,因为几乎所有与基本操作系统的交互都通过COM定义的接口来完成。COM 定义了组件互操作性的标准,即组件互相之间交互的能力。组件不需要用指定的语言编写 只需指定组件之间如何通信和与操作系统如何通信。组件必须遵守的互操作性标准指定后 不同的开发人员在同一应用程序中创建组件时的协作变得非常简单。这就意味着,为COM编 写的组件可以重复使用,并不依赖于编写时所用的语言。一个应用程序包含的组件可以由 Visual basic、C++、Java甚至 COBOL编写,只要遵守COM规范就不会出现问题 COM+是组合了COM和 Windows2000的微软事务服务器(MTS)的一系列服务。MTS提供 措施管理组件的生存期,不用担心应用程序对象的创建和破坏,COM+有能力对此进行管理, 所以可将重点放在实现业务逻辑上。随着COM+的进入,MTS的功能已经合并到操作系统中 被称为微软组件服务。我们将在下一节对它进行简单介绍,在15章将详细介绍
组件里,应用程序的性能就会改善。并且,随着性能的改善,应用程序有效支持的客户数量 就可增加。 13.2 组件 谈到组件和基于组件的应用程序时,了解什么是组件就显得非常重要。在本书中,我们 已见过一些组件在A S P中使用,A D O就是一系列支持访问数据源的组件。 ASP 3.0版的六个内 置组件允许开发人员访问网络应用程序的某些部分。对可扩展的网络应用程序来说,组件的 概念是非常重要的。 13.2.1 组件定义 组件是包含可改变数据形式的代码的对象,可通过一系列可用的特定公共服务 对此代码进行访问。 以下是对组件的更直接的定义。 从一种更实际的意义上理解,组件是代码的封装,这些代码执行应用程序的一 些功能。 这个功能可能是业务规则的处理,如销售税的计算,也可能是从应用程序的数据库检索 某些信息。组件的关键特征是当创建组件时,组件的代码和与组件相关的信息一起打包。在 这种方式下,如果同时使用多种版本的同一组件,每一个组件的信息都与其他组件的信息保 持独立,不存在信息之间发生混乱的问题。 另外,根据组件的工作类型,组件可以由其接口来定义。为了了解关于接口的详细资料, 必须先了解C O M。 13.2.2 COM和C O M+ C O M指组件对象模型(Component Object Model)。 C O M是面向对象范型的一个分支,是一个基于二进制标准的规范,这个标准规 定如何通过接口进行重复使用。 C O M是由微软开发的对象模型,可在所有的 Wi n d o w s平台上执行。它构成所有 Wi n d o w s 应用程序的基础,因为几乎所有与基本操作系统的交互都通过 C O M定义的接口来完成。C O M 定义了组件互操作性的标准,即组件互相之间交互的能力。组件不需要用指定的语言编写, 只需指定组件之间如何通信和与操作系统如何通信。组件必须遵守的互操作性标准指定后, 不同的开发人员在同一应用程序中创建组件时的协作变得非常简单。这就意味着,为 C O M编 写的组件可以重复使用,并不依赖于编写时所用的语言。一个应用程序包含的组件可以由 Visual Basic、C + +、J a v a甚至C O B O L编写,只要遵守C O M规范就不会出现问题。 C O M+是组合了C O M和Windows 2000的微软事务服务器( M T S )的一系列服务。M T S提供 措施管理组件的生存期,不用担心应用程序对象的创建和破坏, C O M+有能力对此进行管理, 所以可将重点放在实现业务逻辑上。随着 C O M+的进入,M T S的功能已经合并到操作系统中, 被称为微软组件服务。我们将在下一节对它进行简单介绍,在 1 5章将详细介绍。 第1 3章 组件和网络应用程序结构计计415 下载
416 ASP3高级编程 China°bo 下载 1323组件服务 随着COM+的发布,MTS在 Windows2000下作为一个单独的实体已不再存在。目前,其 功能已成为操作系统的基础部分(现在称为微软组件服务),并且不只包括事务性服务和组件生 存期的管理 组件服务提供了一些新的功能,在MTS下组件可以应用这些功能。由于操作系统服务(而 不是开发人员)能处理越来越多的特性,开发稳固的可扩展组件变得更为简单。内容如下 组件负载平衡( omponent Load Balancing,CLB)CLB允许多个应用程序服务器为一个 应用程序提供相同的COM+对象。如果需要对象,创建请求首先发送到CLB服务器, 然后再将请求发送给合适的应用程序服务器,这根据一定的准则进行(例如运行应用程 序的机器的繁忙程度和距离多远)。然后,在组件生存期内客户端的应用程序与这个服 务器交互,在COM类级上实现负载平衡。但是, Windows2000首次发布时不支持组件 负载平衡,或许在某个 Service pack中或在未来的 Windows200x版本中会支持组件负载 平衡 排队组件将COM与MSMQ的特性相结合,提供一种异步地调用和执行组件的方式。没 有接收者或发送者可用或可访问,处理也可发生。当客户调用一个排队组件时,调用排 队组件记录器,它将调用打包成给服务器的消息的一部分,并放入队列中。排序组件的 侦听器者从队列中检索出消息,并传输给排队组件的执行者,执行者调用服务器组件并 产生同样的方法调用 内存数据库支持(In- Memory Database Support,MDB)IMDB是瞬态的具有事务性数据 库风格的高速缓存,存在于RAM存储器中,可对数据所在的机器进行极快的访问。需 要高速数据库查找能力或需要管理瞬态过程的COM+应用程序可以使用IMDB COM+对象中利用ADO或 OLE DB接口访问IMDB中的数据。与组件负载平衡相同 Windows2000的首次发布不支持IMDB技术,或许能够在未来的 Windows200x中支持 IMDB技术 对象缓冲对象缓冲是由COM+提供的自动服务,可使组件在缓冲池中保持有效,可以 由需要组件的客户使用。应用程序一旦运行,COM+管理缓冲池,处理激活对象的细 节,并按照所指定的标准重新使用。为了缓冲组件,组件必须是无状态、没有线程约束 并且是可以聚集的。VB组件有线程约束,这就意味着VB组件不能被缓冲。 1.事务管理器 微软组件服务具有组件事务管理器的功能,详细内容可参阅第19章。在管理事务的过程 中,组件服务首先检测组件是否参与事务处理,了解组件的事务处理需求是什么。一些组件 忽略事务处理的过程,而一些组件应该或是必须参与事务处理。一个组件开发和部署时,开 发人员可对这个组件的事务处理参数进行设置。如果设置的话,组件服务利用这个信息决定 组件应该如何参与事务 2.组件管理器 除了管理组件与事务交互,组件服务还可以管理组件自身。而这种功能是MIS的一部分, 考虑MTS特点时通常没有注意它。组件服务利用COM+组件的环境帮助管理组件。 环境是用于维护一个对象集合的一系列运行期属性。每个对象在生存期间与一个环境相 对应,多个对象可以在相同的环境下运行,多个环境可置于相同COM单元内,环境属性允许
13.2.3 组件服务 随着C O M+的发布,M T S在Windows 2000下作为一个单独的实体已不再存在。目前,其 功能已成为操作系统的基础部分 (现在称为微软组件服务),并且不只包括事务性服务和组件生 存期的管理。 组件服务提供了一些新的功能,在 M T S下组件可以应用这些功能。由于操作系统服务 (而 不是开发人员)能处理越来越多的特性,开发稳固的可扩展组件变得更为简单。内容如下: • 组件负载平衡(Component Load Balancing,CLB) C L B允许多个应用程序服务器为一个 应用程序提供相同的 C O M+对象。如果需要对象,创建请求首先发送到 C L B服务器, 然后再将请求发送给合适的应用程序服务器,这根据一定的准则进行 (例如运行应用程 序的机器的繁忙程度和距离多远 )。然后,在组件生存期内客户端的应用程序与这个服 务器交互,在C O M类级上实现负载平衡。但是, Windows 2000首次发布时不支持组件 负载平衡,或许在某个 Service Pack中或在未来的Windows 200x版本中会支持组件负载 平衡。 • 排队组件 将C O M与M S M Q的特性相结合,提供一种异步地调用和执行组件的方式。没 有接收者或发送者可用或可访问,处理也可发生。当客户调用一个排队组件时,调用排 队组件记录器,它将调用打包成给服务器的消息的一部分,并放入队列中。排序组件的 侦听器者从队列中检索出消息,并传输给排队组件的执行者,执行者调用服务器组件并 产生同样的方法调用。 • 内存数据库支持(In-Memory Database Support,IMDB) IMDB是瞬态的具有事务性数据 库风格的高速缓存,存在于 R A M存储器中,可对数据所在的机器进行极快的访问。需 要高速数据库查找能力或需要管理瞬态过程的 C O M+应用程序可以使用I M D B。可以从 C O M+对象中利用 A D O或OLE DB接口访问 I M D B中的数据。与组件负载平衡相同, Windows 2000的首次发布不支持 I M D B技术,或许能够在未来的 Windows 200x中支持 I M D B技术。 • 对象缓冲 对象缓冲是由C O M+提供的自动服务,可使组件在缓冲池中保持有效,可以 由需要组件的客户使用。应用程序一旦运行, C O M+管理缓冲池,处理激活对象的细 节,并按照所指定的标准重新使用。为了缓冲组件,组件必须是无状态、没有线程约束、 并且是可以聚集的。V B组件有线程约束,这就意味着 V B组件不能被缓冲。 1. 事务管理器 微软组件服务具有组件事务管理器的功能,详细内容可参阅第 1 9章。在管理事务的过程 中,组件服务首先检测组件是否参与事务处理,了解组件的事务处理需求是什么。一些组件 忽略事务处理的过程,而一些组件应该或是必须参与事务处理。一个组件开发和部署时,开 发人员可对这个组件的事务处理参数进行设置。如果设置的话,组件服务利用这个信息决定 组件应该如何参与事务。 2. 组件管理器 除了管理组件与事务交互,组件服务还可以管理组件自身。而这种功能是 M T S的一部分, 考虑M T S特点时通常没有注意它。组件服务利用 C O M+组件的环境帮助管理组件。 环境是用于维护一个对象集合的一系列运行期属性。每个对象在生存期间与一个环境相 对应,多个对象可以在相同的环境下运行,多个环境可置于相同 C O M单元内,环境属性允许 416计计ASP 3 高级编程 下载