无标记服务的终结点和行为

无标记服务是与服务相关联的 Web.config 文件中不具有相应 <服务> 标记的服务。Windows Server AppFabric 和 .NET Framework v4 为无标记服务自动添加以下终结点和服务行为。

终结点

AppFabric 为无标记服务自动添加两类终结点:系统终结点和默认应用程序终结点。

系统终结点

系统终结点是 AppFabric 系统自动添加到服务的终结点。machine.config 文件的 endpointExtensions 部分定义了系统终结点类型(例如,discoveryEndpoint)。但是,此规则的例外有 workflowControlEndpoint 和 serviceMetadataEndpoint。当选择“配置服务”对话框的“工作流主机管理”选项卡上的“启用实例控制”选项时,将向服务添加第一个终结点;当选择“配置服务”对话框的“常规”选项卡上的“通过 HTTP 启用元数据”选项时,将添加第二个终结点。也可以使用 Set-ASInstanceManagement cmdlet 来启用实例控制,以及使用 Set-ASAppServiceMetadata cmdlet 来通过 HTTP 启用元数据访问。

默认应用程序终结点

默认应用程序终结点是根据应用程序上支持的协议添加到应用程序的终结点。.NET Framework 4 将针对 Web 应用程序上启用的每个协议为该应用程序中的所有无标记服务添加应用程序默认终结点。例如,如果为某个应用程序启用了 HTTP 协议,则会将带有 basicHttpBinding 的终结点添加到服务,如果为某个应用程序启用了 net.pipe 协议,则会将带有 netNamedPipeBinding 的终结点添加到服务。若要查看为应用程序启用的协议,请右键单击 IIS Manager 中应用程序的名称,指向“管理应用程序”,然后单击“高级设置”。

服务行为

.NET Framework 4 应用可通过浏览 IIS 配置层次结构以及将行为合并到无标记服务所找到的所有无名称行为 (<behavior name=””>)。例如,如果您已在网站级别定义了无名称行为并且在根 Web.config 文件中定义了另一个无名称行为,则两个无名称行为(一个在根级别定义,另一个在网站级别定义)将合并在一起,并在运行时将合成的行为应用到无标记服务。

当您安装和配置 AppFabric 时,无名称行为即被写入根 Web.config 文件(Web.config 文件位于 <Windows 目录>\Microsoft .NET\Framework\v4.xxx\Config)。以下配置片段来自示例根 Web.config 文件:

<behavior name="">
    <workflowIdle timeToUnload="00:01:00" timeToPersist="infinite" />
    <workflowInstanceManagement authorizedWindowsGroup="AS_Administrators" />
    <etwTracking profileName="HealthMonitoring Tracking Profile" />
    <sqlWorkflowInstanceStore connectionStringName="ApplicationServerWorkflowInstanceStoreConnectionString" hostLockRenewalPeriod="00:00:20" runnableInstancesDetectionPeriod="00:00:10" instanceEncodingOption="GZip" instanceCompletionAction="DeleteAll" instanceLockedExceptionAction="BasicRetry" />
</behavior>

  2011-12-05