我应该使用 Jenkins 重量级执行器还是蝇量级执行器来发送通知?

2024-02-24

我的 Jenkins 管道中有几个步骤可以通知用户,在我的例子中使用 Slack 集成。

在 a 中编写通知代码是一个好习惯吗node阻止使用重量级执行器还是将其留在外面以使用蝇量级执行器?

根据文档 https://github.com/jenkinsci/pipeline-plugin/blob/master/TUTORIAL.md:

每个管道构建本身都在主节点上运行,使用享元执行器——一个不计数量的槽,假设不占用任何重要的计算能力。

该执行器代表实际的 Groovy 脚本,它几乎总是空闲的,等待步骤完成。

享元执行者总是可用的。

读完本文后,我仍然不清楚使用重量级或蝇量级执行器的通知是否被认为是一个好的实践


大多数步骤会让您知道它们需要(重量级)执行器插槽(节点/代理) - 请参阅丹尼尔斯的回答。

请记住,执行器(重量级)是 Jenkins 防止 Jenkins 运行的机器过载的方式。通过限制执行器的数量,您就限制了 Jenkins 并行执行的任务数量,从而限制了所需的资源。

对于通知,使用轻量级执行器应该没问题(如果它可以在没有节点的情况下工作),因为它不需要詹金斯机器的太多资源。如果使用常规执行器或轻量级执行器执行通知,这仍然取决于您的用例,这有多重要。如果发送此通知只需要几毫秒/一秒,并且您(平均)有足够的空闲执行器,那么使用节点(又名执行器)并没有什么坏处。然后,为整个管道使用一个节点/代理通常会更容易。

另一方面,请确保您的管道不会永远阻塞执行程序。例如。如果您使用输入步骤,并且管道会等待用户输入很长时间。这里轻量级执行器的使用很重要。此外,网络请求和其他可能长时间运行的任务的超时配置有助于防止(常规)执行程序被阻塞。

希望这有助于为您提供更多指导。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我应该使用 Jenkins 重量级执行器还是蝇量级执行器来发送通知? 的相关文章

随机推荐