19.2.3 语义

部署捕获所建模的系统中概念或物理元素与分配给它的信息资产之间的联系。系统元素表示为DeployedTargets,信息资产表示为DeployedArtifacts。DeploymentTargets和DeploymentArtifacts都是抽象类,不能直接实例化。然而,它们可以被精化为如下要介绍的具体类Artifacts和Nodes。

不同的部署关系可以被裁剪(通过增加包含配置或参数化信息的DeploymentSpecifications)、或者可以在特定的构件profiles中扩展以适应特定的用途。举个例子,一个profiels可以添加标准的、非规范的sterotypes,包括«concurrencyMode»(标签值为{thread, process, none})和«transactionMode»(标签值为{transaction, nestedTransaction, none})。

DeploymentSpecification信息成为构件的运行期输入,该构件通过DeploymentTargets的deployedElements链接与之相关联。使用这些链接,DeploymentSpecifications可以应用与任何容器类型,只要容器是Components类型。如图19.1所示,DeploymentSpecifications可以被描述为部署关系的元素,因为它们是Artifacts(后序小节介绍)。而且,DeploymentSpecifications只能与是ExecutionEnvironments(在Nodes小节介绍)的DeploymentTargets相关联。

一个DeployedArtifact和一个DeploymentTarget之间的部署关系可以定义在“类型”层次和“实例”层次。在“类型”层,部署把DeploymentTargets类型连接到DeployedArtifacts类型上。在“实例”层,部署把特定的DeploymentTargets实例连接到特定的DeployedArtifacts实例。举个例子,一个“类型”层次的部署可能把一个“应用服务器”连接到一个“订单入口请求处理器”上。相对而言,在“实例”层次,三个特定的应用服务(比如,“app-server1”,"app-server-2”和“app-server3”)可以是6个不同“请求处理器”实例的DeploymentTargets。

对于包含复合结构的复杂模型的建模,一个用作部分(由一个组合所拥有)的Property可以是一个部署的目标。类似的,如果InstanceSpecifications表示一个Node组合层次中的一个部分Node,或者它们表示一个Artifact,那么它们可以在一个部署关系中用作DeployementTargets。

results matching ""

    No results matching ""