Jenkins调用了多少JVM?

时间:2013-10-31 23:30:57

标签: jenkins jvm

我使用java -jar jenkins.war和java -jar slave.jar来运行Jenkins master和slave。我想知道Jenkins调用了多少JVM,我可以配置它们的参数。

在主人:

  • 我认为只有一个JVM(我没有在master中运行)

在奴隶中:

  • java -jar slave.jar =>一个JVM
  • 每个作业都有一个新的JVM,这个JVM运行预构建步骤,获取源代码(SVN,GIT,...),后期构建步骤
  • 每个Maven都有自己的JVM,每个Junit都有自己的JVM

另一个问题是,我可以在管理节点的高级部分设置JVM for slave,但是谁使用它的配置?

1 个答案:

答案 0 :(得分:3)

每个Maven构建都不会在自己的JVM中运行。 Java是多线程的。启动从站时,您可以配置它可以处理的线程数,对于主站也是如此。

通常,您在从属节点上运行构建。在unix系统上,可以将这些设置为从远程节点上的主服务器自动运行。

Manage Jenkins -> Manage Nodes -> New Node

在Launch Advanced选项下,您可以为运行Jenkins节点软件的远程JVM指定JVM参数。

每个选项都有帮助,例如"#executors"选项:

  

这可以控制Jenkins可以执行的并发构建的数量。因此,该值会影响Jenkins可能产生的整体系统负载。一个很好的价值就是系统上的处理器数量。

     

将此值增加到超出该值会导致每次构建需要更长时间,但它可能会增加整体吞吐量,因为它允许CPU构建一个项目而另一个构建正在等待I / O.

     

在主/从模式下使用Jenkins时,将此值设置为0会阻止主人自行构建任何建筑物。从站可能没有零执行程序,但可以使用从站状态页面上的按钮暂时禁用。