本文介绍如何增加单个 Opalis Integration Server Action Server 上运行的最大并发策略实例数。
适用于: Orchestrator 的所有版本
原始 KB 数: 2102398
总结
Opalis Integration Server 施加在单个操作服务器上运行的 50 个并发策略实例的默认限制,以防止 Windows 资源(称为 桌面堆)耗尽,这会导致意外的执行结果(如进程终止和无法分配必要的资源来执行任何类型的任务)。
操作服务器或策略模块日志中捕获的错误消息或异常包括内存不足、存储不足以及其他无法分配资源(如命名管道或 Windows 套接字)的消息。
增加可在单个操作服务器上并发运行的最大策略实例数包括两个步骤:
- 为非交互式 Windows 工作站中的桌面增加 Windows 桌面堆。
- 使用 Opalis Integration Server 管理服务器随附的操作服务器策略限制命令行实用工具(aspt.exe)增加允许的并发策略实例的值。
增加桌面堆是 Windows 系统范围的更改,需要重新启动。 有关详细信息,包括桌面堆的说明,请参阅 User32.dll或Kernel32.dll未初始化。
增加桌面堆
Opalis Integration Server 进程都使用不同数量的桌面堆,具体取决于每个策略中存在的对象和对象数量。 根据每个policymodule.exe使用 10 KB 桌面堆,设置计算。 如User32.dll或Kernel32.dll中所述 ,非交互式桌面的桌面堆由以下注册表值的段的第三个参数 SharedSection=
标识:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\Windows
此注册表值的默认数据如下所示:
%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16
要输入到段的第三个参数 SharedSection=
中的值应基于以下计算:
(所需并发策略数) * 10 = (第三个参数值)
示例:如果希望有 100 个并发策略实例,则 100 * 10 = 1000,向上舍入到一个很好的内存号会为你提供 1024 作为第三个参数,因此需要对注册表值进行以下更新:
SharedSection=1024,3072,1024
由于服务控制管理器在非交互窗口工作站中为在用户帐户下运行的每个服务进程创建一个新桌面,因此 SharedSection=
该段的第三个参数的桌面值会减少可在系统上成功运行的用户帐户服务数。
增加最大并发策略实例数
通过执行位于管理服务安装文件夹(default = C:\Program Files\Opalis Software\Opalis Integration Server\Management Service
) 中的 Opalis Integration Server 管理服务器管理服务器管理服务器计算机上的操作服务器策略限制实用工具(aspt.exe),可以增加在任何给定操作服务器上运行的并发策略实例的最大数目。
运行aspt.exe的语法如下所示:
aspt.exe <ActionServer> <NumberOfPolicies>
示例:
aspt.exe COMPUTER1 100
上述操作服务器将更改名为 COMPUTER1 的操作服务器,以允许最多 运行 100 个并发策略实例。
aspt.exe * 200
上述操作服务器将更改所有操作服务器,以允许最多 运行 200 个并发策略实例。
注意
使用 aspt.exe 更改影响的每个操作服务器都必须重启 OpalisActionService 服务才能使更改生效。