Поделиться через


New-PSWorkflowExecutionOption

Создает объект, содержащий параметры конфигурации сеансов для сеансов рабочего процесса.

Синтаксис

Default (По умолчанию)

New-PSWorkflowExecutionOption
    [-PersistencePath <String>]
    [-MaxPersistenceStoreSizeGB <Int64>]
    [-PersistWithEncryption]
    [-MaxRunningWorkflows <Int32>]
    [-AllowedActivity <String[]>]
    [-OutOfProcessActivity <String[]>]
    [-EnableValidation]
    [-MaxDisconnectedSessions <Int32>]
    [-MaxConnectedSessions <Int32>]
    [-MaxSessionsPerWorkflow <Int32>]
    [-MaxSessionsPerRemoteNode <Int32>]
    [-MaxActivityProcesses <Int32>]
    [-ActivityProcessIdleTimeoutSec <Int32>]
    [-RemoteNodeSessionIdleTimeoutSec <Int32>]
    [-SessionThrottleLimit <Int32>]
    [-WorkflowShutdownTimeoutMSec <Int32>]
    [<CommonParameters>]

Описание

Командлет New-PSWorkflowExecutionOption создает объект, содержащий расширенные параметры конфигураций сеансов рабочего процесса, то есть конфигурации сеансов, предназначенные для запуска рабочих процессов Windows PowerShell.

Можно использовать объект PSWorkflowExecutionOption, который New-PSWorkflowExecutionOption формируется в качестве значения параметра SessionTypeOption командлетов, создающих или изменяющих конфигурацию сеанса, например командлетов Register-PSSessionConfiguration и Set-PSSessionConfiguration.

Каждый параметр командлета New-PSWorkflowExecutionOption представляет свойство объекта параметра конфигурации сеанса рабочего процесса, возвращаемого командлетом. Если параметр не указан, командлет создает объект со значением по умолчанию для свойства.

Командлет New-PSWorkflowExecutionOption входит в компонент рабочего процесса Windows PowerShell.

Вы также можете добавить общие параметры рабочего процесса в эту команду. Дополнительные сведения о распространенных параметрах рабочего процесса см. в about_WorkflowCommonParameters.

Этот командлет введён в Windows PowerShell версии 3.0.

Примеры

Пример 1. Создание объекта параметров рабочего процесса

New-PSWorkflowExecutionOption -MaxSessionsPerWorkflow 10 -MaxDisconnectedSessions 200
SessionThrottleLimit                       : 100
PersistencePath                            : C:\Users\User01\AppData\Local\Microsoft\Windows\PowerShell\WF\PS
MaxPersistenceStoreSizeGB                  : 10
PersistWithEncryption                      : False
MaxRunningWorkflows                        : 30
AllowedActivity                            : {PSDefaultActivities}
OutOfProcessActivity                       : {InlineScript}
EnableValidation                           : True
MaxDisconnectedSessions                    : 200
MaxConnectedSessions                       : 100
MaxSessionsPerWorkflow                     : 10
MaxSessionsPerRemoteNode                   : 5
MaxActivityProcesses                       : 5
ActivityProcessIdleTimeoutSec              : 60
RemoteNodeSessionIdleTimeoutSec            : 60
WorkflowShutdownTimeoutMSec                : 500

Эта команда использует командлет New-PSWorkflowExecutionOption для увеличения значения MaxSessionsPerWorkflow до 10 и уменьшения значения MaxDisconnectedSessions до 200.

В выходных данных показан объект, возвращаемый командлетом.

Пример 2. Использование объекта параметров рабочего процесса

# Create a Workflow Options object and save it in a variable
$wo = New-PSWorkflowExecutionOption -MaxSessionsPerWorkflow 10 -MaxDisconnectedSessions 200
# Create the ITWorkflow session configuration
Register-PSSessionConfiguration -Name ITWorkflows -SessionTypeOption $wo -Force
    WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin

Type            Keys                                Name
----            ----                                ----
Container       {Name=ITWorkflows}                  ITWorkflows
Get-PSSessionConfiguration ITWorkflows | Format-List -Property *
Architecture                  : 64
Filename                      : %windir%\system32\pwrshplugin.dll
ResourceUri                   : http://schemas.microsoft.com/powershell/ITWorkflows
MaxConcurrentCommandsPerShell : 1000
allowedactivity               : PSDefaultActivities
UseSharedProcess              : false
ProcessIdleTimeoutSec         : 0
xmlns                         : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers            : 5
maxsessionsperworkflow        : 10
lang                          : en-US
sessionconfigurationdata      : <SessionConfigurationData>
                                    <Param Name='PrivateData'>
                                        <PrivateData>
                                            <ParamName='enablevalidation' Value='True'/>
                                            <Param Name='allowedactivity'Value='PSDefaultActivities' />
                                            <Param Name='outofprocessactivity' Value='InlineScript'/>
                                            <Param Name='maxdisconnectedsessions' Value='200' />
                                            <ParamName='maxsessionsperworkflow' Value='10'/>
                                        </PrivateData>
                                    </Param>
                                </SessionConfigurationData>
SupportsOptions               : true
ExactMatch                    : true
RunAsUser                     :
IdleTimeoutms                 : 7200000
PSVersion                     : 3.0
OutputBufferingMode           : Block
AutoRestart                   : false
MaxShells                     : 25
MaxMemoryPerShellMB           : 1024
MaxIdleTimeoutMs              : 43200000
outofprocessactivity          : InlineScript
SDKVersion                    : 2
Name                          : ITWorkflows
XmlRenderingType              : text
Capability                    : {Shell}
RunAsPassword                 :
MaxProcessesPerShell          : 15
enablevalidation              : True
Enabled                       : True
maxdisconnectedsessions       : 200
MaxShellsPerUser              : 25
Permission                    :

Первые две команды создают новый объект конфигурации сеанса и регистрируют его.

Третья команда использует командлет Get-PSSessionConfiguration для получения конфигурации сеанса ITWorkflows и Format-List для отображения всех свойств конфигурации сеанса в списке. В выходных данных показано, что параметры рабочего процесса в конфигурации сеанса. В частности, конфигурация сеанса имеет свойство MaxSessionsPerWorkflow со значением 10 и свойством MaxDisconnectedSessions со значением 200.

Параметры

-ActivityProcessIdleTimeoutSec

Определяет, сколько времени каждый процесс узла действия сохраняется после того, как процесс становится бездействием. По истечении срока действия интервала процесс закрывается.

Введите значение в секундах. Значение по умолчанию — 60.

Свойства параметров

Тип:Int32
Default value:60
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-AllowedActivity

Указывает действия, разрешенные для выполнения в сеансе.

Введите имена действий с полным пространством имен, например Microsoft.PowerShell.HyperV.Activities.*. Поддерживаются подстановочные знаки. Значение по умолчанию PSDefaultActivitiesвключает встроенные действия Windows Workflow Foundation и действия, представляющие основные командлеты Windows PowerShell.

Свойства параметров

Тип:

String[]

Default value:PSDefaultActivities
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-EnableValidation

Проверяет, включены ли все действия рабочего процесса в сеансе в список разрешенных действий.

Значение по умолчанию — true. Чтобы отключить проверку, используйте следующий формат команды: -EnableValidation:$false.

Свойства параметров

Тип:SwitchParameter
Default value:True
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MaxActivityProcesses

Указывает максимальное количество процессов, которые можно создать в сеансе для поддержки действий рабочих процессов. Значение по умолчанию — 5.

Свойства параметров

Тип:Int32
Default value:5
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MaxConnectedSessions

Указывает максимальное количество удаленных сеансов, которые находятся в рабочем состоянии. Эта квота применяется к сеансам, подключенным ко всем удаленным узлам (целевым компьютерам). Значение по умолчанию — 100.

Свойства параметров

Тип:Int32
Default value:100
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MaxDisconnectedSessions

Указывает максимальное количество удаленных сеансов, которые находятся в отключенном состоянии. Эта квота применяется к сеансам, подключенным ко всем удаленным узлам (целевым компьютерам). Значение по умолчанию — 1000.

Свойства параметров

Тип:Int32
Default value:1000
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MaxPersistenceStoreSizeGB

Задает максимальный размер в гигабайтах хранилища сохраняемости, выделенного рабочим процессам, выполняемым в сеансе. При превышении размера хранилище сохраняемости развертывается для сохранения всех сохраненных данных, но отображается предупреждение и сообщение записывается в журнал событий рабочего процесса. Значение по умолчанию — 10.

Хранилище сохраняемости содержит данные для всех заданий рабочего процесса. Возможность хранения данных позволяет заданиям возобновляться без потери состояния.

Свойства параметров

Тип:Int64
Default value:10
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MaxRunningWorkflows

Указывает, что максимальное количество рабочих процессов, которые могут выполняться одновременно в сеансе. Значение по умолчанию — 30.

Свойства параметров

Тип:Int32
Default value:30
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MaxSessionsPerRemoteNode

Указывает максимальное количество сеансов, которые можно подключить к каждому удаленному узлу (целевому компьютеру). Значение по умолчанию — 5.

Свойства параметров

Тип:Int32
Default value:5
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MaxSessionsPerWorkflow

Указывает максимальное количество сеансов, которые можно создать для поддержки каждого рабочего процесса. Значение по умолчанию — 5.

Свойства параметров

Тип:Int32
Default value:5
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-OutOfProcessActivity

Определяет, какие разрешенные действия (указанные параметром allowedActivities allowedActivities) выполняются вне процесса. Значение по умолчанию — InlineScript.

Свойства параметров

Тип:

String[]

Default value:InlineScript
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PersistencePath

Указывает расположение на диске, в котором хранятся состояние рабочего процесса и данные. Хранение состояния рабочего процесса и данных позволяет приостанавливать и возобновлять рабочие процессы, а также восстанавливаться после прерываний и сбоев сети.

Значение по умолчанию — $Env:LOCALAPPDATA\Microsoft\Windows\PowerShell\WF\PS.

Свойства параметров

Тип:String
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PersistWithEncryption

Указывает, что рабочий процесс шифрует данные в хранилище сохраняемости. При хранении данных сохраняемости в сетевом ресурсе рекомендуется использовать эту функцию.

Свойства параметров

Тип:SwitchParameter
Default value:$Env:LOCALAPPDATA\Microsoft\Windows\PowerShell\WF\PS
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-RemoteNodeSessionIdleTimeoutSec

Указывает, сколько времени сеанс, подключенный к удаленному узлу (целевому компьютеру), сохраняется, если он неактивен.

Введите значение в секундах. Значение по умолчанию — 60.

Свойства параметров

Тип:Int32
Default value:60
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SessionThrottleLimit

Указывает, сколько операций создается для поддержки всех рабочих процессов, запущенных в сеансе. Значение по умолчанию — 100.

Свойства параметров

Тип:Int32
Default value:100
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-WorkflowShutdownTimeoutMSec

Указывает, сколько времени сеанс поддерживается после принудительной приостановки всех рабочих процессов в сеансе. Когда истекает время ожидания, Windows PowerShell закрывает сеанс, даже если все рабочие процессы еще не приостановлены.

Введите значение в миллисекундах. Значение по умолчанию — 500.

Свойства параметров

Тип:Int32
Default value:500
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

PSWorkflowExecutionOption

Примечания

При превышении максимального значения, заданного параметром, команда для создания другого экземпляра в сеансе завершается ошибкой, если не указано в описании параметра. Например, если значение MaxConnectedSessions равно 100. Команда для создания 101-го сеанса на удаленный узел (целевой компьютер) завершается ошибкой.

Свойства объекта конфигурации сеанса зависят от параметров конфигурации сеанса и значений этих параметров. Кроме того, конфигурации сеансов, использующие файл конфигурации сеанса, имеют дополнительные свойства.

В частности, свойства конфигураций сеансов, которые включают объект PSWorkflowExecutionOptions, зависят от значений параметра рабочего процесса. Например, если конфигурация сеанса включает объект PSWorkflowExecutionOptions, который задает значение, отличное от по умолчанию для свойства SessionThrottleLimit, конфигурация сеанса имеет свойство SessionThrottleLimit. В противном случае это не так.