使用 Windows Server AppFabric Cmdlet 控制应用程序

本主题介绍如何使用 AppFabric cmdlet 停止和启动应用程序。若要停止应用程序,Stop-ASApplication cmdlet 会禁用所有应用程序协议,并停止应用程序自动启动。若要启动应用程序,Start-ASApplication cmdlet 会重新启动所有应用程序协议,并恢复应用程序自动启动。您还可以执行 Get-ASApplication cmdlet 来确定应用程序协议和自动启动的状态。

有关执行 cmdlet 的详细信息,请参阅运行 Windows Server AppFabric Cmdlet

停止应用程序的步骤

在 AppFabric Windows PowerShell 控制台中,执行 Stop-ASApplication cmdlet 来正确停止应用程序。此 cmdlet 会执行以下操作:

  • 通过将“enabledProtocols”属性的所有内容复制到特定虚拟应用程序的 applicationHost.config 文件中 \configuration\system.applicationHost\sites\site\application 元素的“previouslyEnabledProtocols”属性(始终覆盖其内容)来禁用应用程序的所有协议(禁用消息流)。然后 cmdlet 会清除“enabledProtocols”属性的内容。

  • 通过将 applicationHost.config 文件中虚拟应用程序配置的 serviceAutoStartEnabled 属性设置为“false”来停止应用程序自动启动。

语法选项:

语法 1

Stop-ASApplication [-SiteName] <String> [[-VirtualPath] <String>] [-Confirm] [-WhatIf] [<CommonParameters>]

语法 2

Stop-ASApplication [-Uri] <Uri> [-Confirm] [-WhatIf] [<CommonParameters>]

语法 3

Stop-ASApplication -ApplicationObject <ApplicationInfo> [-Confirm] [-WhatIf] [<CommonParameters>]
参数 描述

-SiteName <String> –VirtualPath <String>

指向网站或应用程序的指针,表示要停止的一个或多个应用程序。如果参数集表示站点,则 cmdlet 将停止该站点内的所有应用程序。

-Uri <Uri>

指向特定站点或应用程序的指针,表示要停止的一个或多个应用程序。如果参数集表示站点,则 cmdlet 将停止该站点内的所有应用程序。

-ApplicationObject <ServiceInfo>

指向要停止的特定应用程序的指针。

-Confirm

如果该参数存在,则会在执行命令前提示您进行确认。

-WhatIf

如果该参数存在,则会显示描述命令效果的消息,而不执行命令。

启动应用程序的步骤

在 AppFabric Windows PowerShell 控制台中,执行 Start-ASApplication cmdlet 来正确启动应用程序。此 cmdlet 会执行以下操作:

  • 通过将“previouslyEnabledProtocols”的内容复制到“enabledProtocols”,然后删除“previouslyEnabledProtocols”属性来重新启用 applicationHost.config 文件中的应用程序协议。

  • 如果 applicationHost.config 文件中应用程序的 serviceAutoStartMode 属性为“All”或“Custom”,则通过将 applicationHost.config 文件中的 serviceAutoStartEnabled 设置为“True”来还原自动启动。

语法选项:

语法 1

Start-ASApplication [-SiteName] <String> [[-VirtualPath] <String>] [-StartApplicationPool] [<CommonParameters>]

语法 2

Start-ASApplication [-Uri] <Uri> [-StartApplicationPool] [<CommonParameters>]

语法 3

Start-ASApplication -ApplicationObject <ApplicationInfo> [-StartApplicationPool] [<CommonParameters>]
参数 描述

-SiteName <String> –VirtualPath <String>

指向站点或应用程序的指针,表示要启动的一个或多个应用程序。如果参数集表示站点,则 cmdlet 将启动该站点内的所有应用程序。

-Uri <Uri>

指向特定站点或应用程序的指针,表示要启动的一个或多个应用程序。如果参数集表示站点,则 cmdlet 将启动该站点内的所有应用程序。

-ApplicationObject <ServiceInfo>

指向要启动的特定应用程序的指针。

-StartApplicationPool

如果此标志存在,则 cmdlet 会启动应用程序池(如果应用程序池未运行)。如果发生这种情况,则必须将应用程序的应用程序池的 startMode 属性设置为“AlwaysRunning”。

确定应用程序状态的步骤

在 AppFabric Windows PowerShell 控制台中,执行 Get-ASApplication cmdlet 来返回有关操作状态的信息。Get-ASApplication 会返回 ApplicationInfo 对象。可以从 ApplicationInfo 对象中的 MessageFlowStatusAutoStartEnabledAutoStartMode 属性确定应用程序的状态。

语法选项:

语法 1

Get-ASApplication [[-SiteName] <String>] [[-VirtualPath] <String>] [[-ApplicationPoolName] <String>] [<CommonParameters>]
参数 描述

-SiteName <String> –VirtualPath <String>

指向要返回信息的站点或应用程序的指针。如果参数集表示站点,则 cmdlet 将返回该站点内的所有应用程序的信息。

-ApplicationPoolName

应用程序使用的应用程序池的名称。

  2011-12-05