Set-ASAppSqlServicePersistence

Set-ASAppSqlServicePersistence

SQL Server 永続化を有効にし、SQL Server 永続化データベースへの接続に使用される接続文字列を指定し、永続化に関連する詳細なパラメーター (InstanceEncodingOption や InstanceLockedExceptionAction など) を指定されたレベルで設定します。

構文

Parameter Set: SiteNameAndVirtualPath
Set-ASAppSqlServicePersistence [-SiteName] <String> [[-VirtualPath] <String> ] [-ConnectionString <String> ] [-ConnectionStringName <String> ] [-EnableNetPipeProtocol] [-HostLockRenewalPeriod <TimeSpan> ] [-InstanceCompletionAction {<DeleteAll> | <DeleteNothing>} ] [-InstanceEncodingOption {<GZip> | <None>} ] [-InstanceLockedExceptionAction {<AggressiveRetry> | <BasicRetry> | <NoRetry>} ] [-RunnableInstancesDetectionPeriod <TimeSpan> ] [-UseInherited] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: ApplicationObject
Set-ASAppSqlServicePersistence -ApplicationObject <ApplicationInfo> [-ConnectionString <String> ] [-ConnectionStringName <String> ] [-EnableNetPipeProtocol] [-HostLockRenewalPeriod <TimeSpan> ] [-InstanceCompletionAction {<DeleteAll> | <DeleteNothing>} ] [-InstanceEncodingOption {<GZip> | <None>} ] [-InstanceLockedExceptionAction {<AggressiveRetry> | <BasicRetry> | <NoRetry>} ] [-RunnableInstancesDetectionPeriod <TimeSpan> ] [-UseInherited] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: RootConfig
Set-ASAppSqlServicePersistence [-ConnectionString <String> ] [-ConnectionStringName <String> ] [-EnableNetPipeProtocol] [-HostLockRenewalPeriod <TimeSpan> ] [-InstanceCompletionAction {<DeleteAll> | <DeleteNothing>} ] [-InstanceEncodingOption {<GZip> | <None>} ] [-InstanceLockedExceptionAction {<AggressiveRetry> | <BasicRetry> | <NoRetry>} ] [-Root] [-RunnableInstancesDetectionPeriod <TimeSpan> ] [-UseInherited] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: ServiceObject
Set-ASAppSqlServicePersistence -ServiceObject <ServiceInfo> [-ConnectionString <String> ] [-ConnectionStringName <String> ] [-EnableNetPipeProtocol] [-HostLockRenewalPeriod <TimeSpan> ] [-InstanceCompletionAction {<DeleteAll> | <DeleteNothing>} ] [-InstanceEncodingOption {<GZip> | <None>} ] [-InstanceLockedExceptionAction {<AggressiveRetry> | <BasicRetry> | <NoRetry>} ] [-RunnableInstancesDetectionPeriod <TimeSpan> ] [-UseInherited] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: Uri
Set-ASAppSqlServicePersistence [-Uri] <Uri> [-ConnectionString <String> ] [-ConnectionStringName <String> ] [-EnableNetPipeProtocol] [-HostLockRenewalPeriod <TimeSpan> ] [-InstanceCompletionAction {<DeleteAll> | <DeleteNothing>} ] [-InstanceEncodingOption {<GZip> | <None>} ] [-InstanceLockedExceptionAction {<AggressiveRetry> | <BasicRetry> | <NoRetry>} ] [-RunnableInstancesDetectionPeriod <TimeSpan> ] [-UseInherited] [-Confirm] [-WhatIf] [ <CommonParameters>]

詳細な説明

このコマンドレットは、指定されたスコープに関連付けられている構成ファイルに sqlWorkflowInstanceStore 要素を追加し (まだ存在しない場合)、その要素の hostLockRenewalPeriod、runnabletancesDetectionPeriod、instanceEncodingOption、instanceComplectionAction、および instanceLockedExceptionAction の各属性の値を設定します。

このコマンドレットと共に -UseInherited パラメーターを使用すると、指定されたスコープに関連付けられている構成ファイルから sqlWorkflowInstanceStore 要素または <remove name="sqlWorkflowInstanceStore"> 要素が削除され、永続化設定が上位のスコープから継承されるようになります。

パラメーター

-ApplicationObject<ApplicationInfo>

ApplicationObject の名前。コマンドレットは、そのアプリケーションに対して動作します。

エイリアス

なし

必須

true

位置

named

既定値

なし

パイプライン入力の許可

true (ByValue)

ワイルドカード文字の許可

-ConnectionString<String>

SQL Server 永続化プロバイダーから永続化データベースへの接続に使用される接続文字列。例: "Data Source=(local);Initial Catalog=PersistenceDB;Integrated Security=True"

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

true (ByPropertyName)

ワイルドカード文字の許可

-ConnectionStringName<String>

構成ファイル内で定義されている接続文字列の名前

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

true (ByPropertyName)

ワイルドカード文字の許可

-EnableNetPipeProtocol

net.pipe プロトコルを Web サイト レベルまたはアプリケーション レベルで有効にします。サービス スコープに対して実行されるコマンドレットでこのパラメーターを使用すると、そのサービスを含むアプリケーションに対して net.pipe プロトコルが有効になります。

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

-HostLockRenewalPeriod<TimeSpan>

ロックが期限切れになる前に、ホストがインスタンスのロックを更新しなければならない間隔を指定します。指定した期間内にホストでロックが更新されない場合、インスタンスのロックは解除され、他のホストがそのインスタンスのロックを取得することがあります。

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

-InstanceCompletionAction<InstanceCompletionAction>

ワークフロー サービス インスタンスが完了した後もインスタンス状態情報を永続化データベースに保持するかどうかを指定します。このパラメーターに指定できる値は、DeleteAll および DeleteNothing です。

このパラメーターに指定できる値:

DeleteAll

DeleteNothing

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

-InstanceEncodingOption<InstanceEncodingOption>

インスタンス状態情報を永続化データベースに保存する前に、GZip アルゴリズムを使用してこの情報を圧縮するかどうかを指定します。指定できる値は、GZip および None です。

このパラメーターに指定できる値:

GZip

None

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

-InstanceLockedExceptionAction<InstanceLockedExceptionAction>

サービス ホストが InstanceLockedException を受け取ったときに行う操作を指定します。この例外は、ホストがロックしようとしたワークフロー サービス インスタンスが別のホストによってロックされているときに発生します。

このフィールドで使用できるオプションは NoRetry、BasicRetry、および AggressiveRetry です。既定値は NoRetry です。次に、これら 3 つのオプションについて説明します。

このパラメーターに指定できる値:

AggressiveRetry

BasicRetry

NoRetry

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

-Root

ルート アプリケーションの名前。コマンドレットは、そのスコープで動作します。Root パラメーターを使用する場合は、SiteName、VirtualPath、または Uri パラメーターを使用しないでください。

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

-RunnableInstancesDetectionPeriod<TimeSpan>

期間を指定します。この期間後、SQL ワークフロー インスタンス ストアでは検出タスクを実行し、前の検出サイクル後に永続化データベースにある実行可能またはアクティブ化可能なワークフロー インスタンスを検出します。

このプロパティに設定する間隔を短くすると、ワークフロー インスタンスに関連付けられたタイマーの期限切れから、イベントの通知によるインスタンスの読み込みまでの時間が短縮されます。しかし、ホストの処理負荷も増加するため、タイマーやホストの持続的な失敗が少ないシナリオには適さないことがあります。

プロパティの型は TimeSpan です。プロパティの値の形式は hh:mm:ss です。プロパティの最小値は 00:00:01 です。プロパティの既定値は 00:00:05 です。

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

-ServiceObject<ServiceInfo>

ServiceObject の名前。コマンドレットは、そのサービスに対して動作します。このパラメーターは、通常、Get-ASAppService コマンドレットの出力を、ServiceObject パラメーターを含むコマンドレットにパイプするために使用します。

エイリアス

なし

必須

true

位置

named

既定値

なし

パイプライン入力の許可

true (ByValue)

ワイルドカード文字の許可

-SiteName<String>

Web サイトの名前を、IIS マネージャーの [接続] ウィンドウで定義されているとおりに指定します。コマンドレットは、そのサイトのスコープで動作するか、そのサイト内の特定のアプリケーション、仮想ディレクトリ、またはサービスのスコープで動作します。SiteName パラメーターを使用する場合は、そのサイト内に存在するアプリケーション、ディレクトリ、またはサービスを指定する VirtualPath パラメーターを追加する必要があります。

アプリケーションまたは仮想ディレクトリの場合は、IIS で定義されているとおりのアプリケーションの名前が仮想パスに含まれます。サービスの場合、仮想パスにはアプリケーションの名前、スラッシュ、およびサービスの .svc ファイルまたは .xamlx ファイルの名前が含まれます。VirtualPath パラメーターは、サイト スコープの場合は必要ありません。仮想パスの先頭の "/" 文字は省略可能です。SiteName パラメーターを使用する場合は、Uri パラメーターを使用しないでください。

エイリアス

なし

必須

true

位置

1

既定値

なし

パイプライン入力の許可

true (ByPropertyName)

ワイルドカード文字の許可

-Uri<Uri>

IIS サイト、アプリケーション、仮想ディレクトリ、またはサービスの URI。コマンドレットは、そのスコープで動作します。Uri パラメーターを使用する場合は、SiteName パラメーターまたは SiteName パラメーターと VirtualPath パラメーターのセットを使用しないでください。

エイリアス

なし

必須

true

位置

1

既定値

なし

パイプライン入力の許可

true (ByPropertyName)

ワイルドカード文字の許可

-UseInherited

上位スコープから継承した設定を使用するには、このパラメーターを使用します。このパラメーターを使用すると、指定したレベルで定義されている sqlWorkflowInstanceStore ビヘイビアーはすべて削除されます。また、このコマンドレットは、<remove name="sqlWorkflowInstanceStore"> 要素を構成ファイルからすべて削除します。

エイリアス

なし

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

-VirtualPath<String>

アプリケーション、仮想ディレクトリ、またはサービスの仮想パスを、IIS マネージャーの [接続] ウィンドウで定義されているとおりに指定します。コマンドレットは、そのアプリケーション、仮想ディレクトリ、またはサービスに対して動作します。VirtualPath パラメーターは SiteName パラメーターと共に使用する必要があります。SiteName では、アプリケーション、ディレクトリ、またはサービスが存在するサイトを指定します。仮想パスの先頭の "/" 文字は省略可能です。

アプリケーションの場合、仮想パスには、IIS で定義されているとおりの、アプリケーションの名前が含まれます。サービスの場合、仮想パスにはアプリケーションの名前、スラッシュ、およびサービスの .svc ファイルまたは .xamlx ファイルの名前が含まれます。SiteName パラメーターと VirtualName パラメーターのセットを使用する場合は、Uri パラメーターを使用しないでください。

エイリアス

なし

必須

false

位置

2

既定値

なし

パイプライン入力の許可

true (ByPropertyName)

ワイルドカード文字の許可

-Confirm

コマンドの実行前に確認のプロンプトを表示します。

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

false

-WhatIf

コマンドを実際に実行せずに、コマンドを実行した場合の結果を示します。

必須

false

位置

named

既定値

なし

パイプライン入力の許可

false

ワイルドカード文字の許可

false

<CommonParameters>

このコマンドレットは、-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable という一般的なパラメーターをサポートしています。詳細については、次を参照してください。 about_CommonParameters

例 1

このコマンドは、永続化設定をルート レベルで行います。

Set-ASAppSqlServicePersistence –Root –ConnectionStringName ApplicationServerWorkflowInstanceStoreConnectionString –HostLockRenewalPeriod “00:00:20” –RunnableInstancesDetectionPeriod “00:00:10”–InstanceCompletionAction DeleteAll –InstanceEncodingOption GZip -InstanceLockedExceptionAction BasicRetry

例 2

このコマンドは、永続化設定を Web サイト レベルで行います。

Set-ASAppSqlServicePersistence –SiteName “Default Web Site” -HostLockRenewalPeriod “00:00:20”

例 3

これらのコマンドは、永続化設定をアプリケーション レベルで行います。

Set-ASAppSqlServicePersistence –SiteName “Default Web Site” –VirtualPath “/SampleApp” –ConnectionStringName ApplicationServerWorkflowInstanceStoreConnectionString –RunnableInstancesDetectionPeriod “00:00:10”
Get-ASApplication -SiteName "Default Web Site" -VirtualPath "/SampleApp" | Set-ASAppSqlServicePersistence -ConnectionStringName ApplicationServerWorkflowInstanceStoreConnectionString -RunnableInstancesDetectionPeriod "00:00:10"

例 4

これらのコマンドは、永続化設定をサービス レベルで行います。

Set-ASAppSqlServicePersistence –SiteName “Default Web Site” –VirtualPath “/SampleApplication/SampleService.xamlx” –ConnectionStringName ApplicationServerWorkflowInstanceStoreConnectionString
Get-ASApplicationService –SiteName “Default Web Site” –VirtualPath “/SampleApp/SampleService.xamlx” | Set-ASAppSqlServicePersistence –ConnectionStringName ApplicationServerWorkflowInstanceStoreConnectionString –HostLockRenewalPeriod “00:00:20” –RunnableInstancesDetectionPeriod “00:00:10

例 5

これらのコマンドは、URI を使用して決定されるレベルで永続化設定を行います。

Set-ASAppSqlServicePersistence –Uri “http://localhost” –ConnectionStringName ApplicationServerWorkflowInstanceStoreConnectionString –HostLockRenewalPeriod “00:00:20” –RunnableInstancesDetectionPeriod “00:00:10”
Set-ASAppSqlServicePersistence –Uri “http://localhost/SampleApp” –ConnectionStringName ApplicationServerWorkflowInstanceStoreConnectionString –HostLockRenewalPeriod “00:00:20” –RunnableInstancesDetectionPeriod “00:00:10”
Set-ASAppSqlServicePersistence –Uri “http://localhost/SampleApp/SampleService.xamlx” –ConnectionStringName ApplicationServerWorkflowInstanceStoreConnectionString –HostLockRenewalPeriod “00:00:20” –RunnableInstancesDetectionPeriod “00:00:10”

例 6

これらのコマンドは、net.pipe プロトコルをサイト レベルまたはアプリケーション レベルで有効にします。EnableNetPipe パラメーターを指定してサービス スコープ (またはレベル) に対してこのコマンドレットを実行すると、そのサービスを含むアプリケーションに対して net.pipe プロトコルが有効になります。

Set-ASAppSqlServicePersistence –SiteName “Default Web Site” -EnableNetPipe
Set-ASAppSqlServicePersistence –Uri “http://localhost” -EnableNetPipe
Set-ASAppSqlServicePersistence –SiteName “Default Web Site” –VirtualPath “/samplapp” -EnableNetPipe
Set-ASAppSqlServicePersistence –Uri “http://localhost/sampleapp” -EnableNetPipe
Set-ASAppSqlServicePersistence –SiteName “Default Web Site” –VirtualPath “/sampleapp/sampleservice.xamlx” -EnableNetPipe
Set-ASAppSqlServicePersistence –Uri “http://localhost/sampleapp/sampleservice.xamlx” -EnableNetPipe