服务器配置 > 工作流的服务器特性 > 使用特性 > 使用 PTC RV&S 批量编辑并行化特性的最佳做法
使用 PTC RV&S 批量编辑并行化特性的最佳做法
PTC RV&S 通过使用线程池并行处理,可以优化涉及多个项的批量编辑操作性能。例如,对超过 1000 个节点的文档进行多编辑操作会消耗大量时间。在这种情况下,使用线程池进行并行处理有助于提高性能。
借助并行处理框架,您可以根据批量编辑操作的大小,将批量编辑操作重定向到公用池或专用附加池。您可使用针对并发处理的 PTC RV&S 特性适当地调整线程池的大小并进行分配。要通过有效的内存管理执行批量编辑载荷,您必须进行此设定。
使用以下 PTC RV&S 特性可分配和调整并行或并发处理期间的线程池大小:
mksis.concurrent.maxThreadsPerCPUCore:分配给并发执行的每个 CPU 内核线程数。
mksis.concurrent.commonPoolRatioInPercentage:共用线程池使用的线程数的百分比分配。剩余数目的线程将用于单独的线程池。默认值为 50%。
最佳做法是,如果大多数操作涉及的项数小于 256,则应考虑增大此特性的值。增大值时,线程分配将相应调整。
mksis.concurrent.taskLimitForCommonPool:表示使用共用线程池并发处理的任务数目上限。超出此限制的任务将使用单独线程池执行。默认值是 256。
最佳做法是,如果涉及项数大于 256 的操作需要花费较长时间,则应考虑减小值,以便在单独的专用池中执行这些操作。
mksis.concurrent.maxThreadsForAdditionalPool: 表示为每个附加池分配的线程数。如果以编程方式进行分配,则默认情况下此数值设置为 0。
最佳做法是,使用值 0 以便应用程序为每个附加池分配适当数量的线程。目前,PTC RV&S 将所有附加池限制为使用最多 8 个线程。这将有助于在单独的专用池内处理更多数量的操作。您可以使用此特性来覆盖默认值,将值设置为 0 到 16 之间的数值。
如果所有附加池处于忙碌中,正在处理其他操作,则新操作将在公用池中分配和处理。
对于本章中的示例,每个附加池的线程大小作如下考虑:
< 64 个线程:附加池中允许的最大线程数= 4
< 128 个线程:附加池中允许的最大线程数= 6
>= 128 个线程:附加池中允许的最大线程数= 8
* 
若修改了任何特性,则需要重新启动服务器。您可以运行 diag 命令以立即反映处理期间所做的更改。例如,im diag --diag=concurrenttaskmanager --user=administrator --password=password --param=restart
这对您有帮助吗?