詹金斯:两个奴隶与一个奴隶两个执行者

Jir*_* Hu 9 jenkins jenkins-slave

我在同一台Windows服务器上创建两个从属服务器或一个带有两个执行程序的服务器之间有什么区别吗?

Eag*_*bow 8

是的,存在差异:它是关于内存消耗和维护/管理的努力.

  • 在系统上启动从站启动(主)进程.此过程花费(私有)主内存来运行并连接到主服务器.
  • 每个执行程序都是主进程的子进程.

因此很明显,与运行两个从站(每个都有一个执行程序)相比,在一个从站上运行两个执行程序总共花费更少的内存,因为主进程的内存消耗将会两次:

2 * Main Processes + 2 * Executors > 1 * Main Process + 2 * Executors
Run Code Online (Sandbox Code Playgroud)

此外,管理一个奴隶比一个执行者更多的努力:虽然执行者几乎没有什么可担心的,但是有很多事情要为奴隶配置.此外,两个从属设备的功能无论如何都是相同的(它们在您所说的相同操作系统上运行),因此几乎没有增值也可以为它分配不同的标签.

简而言之,如果没有其他边界条件,这使得我采用不同的方式,我总是希望在一个从站上运行两个执行程序,因为这更容易管理并且保存了一些内存.

  • 虽然总的来说我同意你的回答(+1)——每种情况都应该区别对待。使用 docker slaves 毫不费力,几乎不需要管理。与多个从站一起工作可能会更好地运行无法在同一台机器上并行运行的 UI 测试。在很多情况下,拥有 2 个从站比拥有一个从站更有意义,重要的是要记住,没有针对它的全球最佳实践,但这取决于实际在预期环境中运行的流程。 (2认同)