具有在多个服务器上可以有用地执行的活动时,可使用广播功能在多个服务器上重复同一个步骤。
通常一个步骤仅在一个服务器上运行。但是,每个步骤都有一个
广播复选框。选中步骤的
广播框时,运行时系统会将此步骤替换为一组非广播步骤,每个与步骤的选择器匹配的服务器对应一个非广播步骤。
注: 如果步骤的选择器仅与一个服务器匹配,那么该步骤仅运行一次。
对广播的潜在用途包括:
- 重新引导一组服务器。
- 在一组服务器上运行测试。
- 将同一组文件复制到整个服务器组。
- 将同一组源代码检出到多个服务器,以便为稍后使用一个易于维护的步骤执行的单独任务准备好这些服务器。
广播步骤中的线程化
在运行时为广播步骤创建替换步骤时,系统将如下所示执行步骤:
- 如果广播步骤的线程属性设置为否,那么替换步骤将获取相同的线程值,这样将连续执行所有步骤。
必须完成每个步骤,才能开始下一个步骤。
- 如果广播步骤的线程属性设置为是,那么替换步骤也将获取相同的线程值。这将导致一组步骤彼此之间以并行方式运行,并且与广播步骤前后的任何线程步骤之间也以并行方式运行。
- 如果广播步骤的线程属性设置为加入,那么系统将创建把线程设置为是的替换步骤,但最后一个步骤例外,因为它标记为加入。这将导致一组步骤彼此之间以并行方式执行,并且与位于其前面的任何线程步骤之间也以并行方式执行,但是整组步骤必须完成,然后才能启动广播步骤后的步骤。
从广播步骤启动其他项目
可以广播包含内联项目的步骤,或者在步骤通过或失败时链接项目的步骤(通过链/失败链)。广播用于启动(链接)另一个项目的步骤时,请注意:此广播步骤不覆盖所启动项目的选择器。如果您的目的是在与广播步骤的选择器匹配的每个服务器上启动此项目,那么通常在从广播步骤启动项目时使用库(没有自己的选择器的项目)。
如果不使用库,那么广播步骤的每个副本在不同的服务器上运行,但是内联或已连接项目将服从自己的选择器,从而可能不会选择与广播步骤的副本相同的服务器。可以以每个广播步骤在不同的服务器上运行结束,而来自内联项目的所有步骤多次在同一个服务器上运行。
注: 如果目的是使用广播在与一个选择器匹配的每个服务器上启动一次库,请务必也在该库上设置固定选项,这样它的所有步骤(使用缺省项目服务器的步骤)将在同一个服务器上运行。