高可用性队列处理
队列条目的处理方式取决于您的方法服务器设置,而当运行多个后台服务器时,取决于队列如何分配给这些方法服务器。
安装 Windchill 时,有一个为处理队列条目创建后台方法服务器的选项 (如果系统有足够的 CPU 或内核)。如果系统过小或未选择创建后台方法服务器的选项,则所有处理都会通过前台方法服务器来完成。队列条目执行顺序始终取决于执行条目的队列类型 (排程、池或进程)。仅配置一个方法服务器时,您无法设置任何特殊队列处理。但是,多数可伸缩配置都要求配置一个或多个后台方法服务器。
为执行队列条目设置一个后台方法服务器后,执行队列条目将不受用户与 Windchill 交互的影响。执行队列条目的速度取决于可用内存及服务器速度。当后台方法服务器以全部容量处理条目时,队列执行速度可能会减慢,而当方法服务器由于某种原因而离线时,队列执行可能会同时全部停止。
设置多个后台方法服务器时,可将队列组分配到多个后台方法服务器。将队列分配到队列组且将该组配置为由多个后台方法服务器运行时,将支持高可用性队列。使用此类配置可确保在后台方法服务器离线时不间断处理进程和排程队列条目。将进程队列分配到多个后台方法服务器时,一次仅对其中一个服务器授予执行权限。有要执行的队列条目时,此执行权限归于一个服务器。有新工作时,执行权限可以并将会在服务期间切换。
对于池队列,在高可用性配置中分配池队列组可确保在后台方法服务器离线时不间断处理队列条目,而且还可够改善性能。性能得到改善是由于池队列支持队列条目并行执行。池队列中存在多个队列条目时,队列条目可由任何得到队列分配的后台方法服务器执行,而且一个条目的处理不取决于另一个条目是否完成,同时也不保证这些队列的执行顺序。
执行被分配给多个后台方法服务器的队列中的队列条目时,请求任务的首个后台方法服务器将处理队列条目任务。接受任务请求后,其他任何得到该队列分配的后台方法服务器在提出执行同一队列条目任务时将找不到要处理的任务。这可确保仅执行一次队列条目。
在仅有一个方法服务器或仅有一个前台和一个后台方法服务器的系统上,您将无法配置高可用性队列处理。
|
将队列分配到多个后台方法服务器后,将无法预知哪个方法服务器执行哪个队列条目。请注意,与队列条目相关的执行信息仅记录在执行该条目任务的方法服务器中。因此,使用高可用性队列配置及排除队列条目执行问题时,必须检查配置中使用的所有方法服务器日志。
|
要设置高可用性配置中的队列组,请完成
配置后台方法服务器中所述的步骤。请务必在多个后台服务器的启动命令中指定高可用性队列的队列组设置。