Jenkins 執行器(Executor)并發數量修改

Jenkins 執行器(Executor)并發數量修改

    • 一、什么是 Jenkins 執行器(Executor)?
    • 二、為什么默認是 2?
    • 三、如何修改 Jenkins 執行器數量?
      • 1. 進入 Jenkins 管理頁面
      • 2. 找到節點配置
      • 3. 選擇需要修改的節點
      • 4. 修改執行器數量
      • 5. 保存配置
    • 四、最佳實踐與注意事項
    • 五、總結


在使用 Jenkins 進行持續集成與持續部署(CI/CD)的過程中,我們常常會遇到這樣的問題:多個任務同時觸發時,Jenkins 卻需要排隊等待。這并不是 Jenkins 的 Bug,而是由 執行器(Executor)數量配置決定的。

本文將帶你了解 Jenkins 執行器的概念,并手把手教你如何修改執行器數量,以支持并發構建。


一、什么是 Jenkins 執行器(Executor)?

在 Jenkins 中,執行器(Executor) 就是 Jenkins 在某個 Agent(節點)上執行任務的“工作線程”。

  • 一個執行器 = 一條可以運行 Job 的并發通道

  • 一個 Agent 可以擁有多個執行器

  • 如果某個 Agent 的執行器數量是 1,那么它一次只能運行一個任務,多余的任務會進入 排隊狀態
    在這里插入圖片描述

舉個例子:

  • 如果你有一個 Agent,執行器數量設置為 1,那么同時觸發 3 個構建任務,只有第 1 個能立刻執行,另外 2 個會排隊。
  • 如果將執行器數量改成 3,那么這 3 個任務就可以同時執行。

二、為什么默認是 2?

Jenkins 出于 資源隔離和安全性 考慮,默認將 Agent 的執行器數量設置為 2

  • 避免多個任務同時運行時互相干擾(如寫入同一目錄、競爭端口等)。

  • 降低資源沖突風險,保證單任務穩定性。

  • 適合大部分中小規模項目。

但在一些場景下,例如:

  • 機器配置較高,CPU/內存資源充足;

  • 構建任務之間相互獨立;

  • 希望充分利用節點資源;

就可以增加執行器數量,實現 并發構建


三、如何修改 Jenkins 執行器數量?

1. 進入 Jenkins 管理頁面

首頁 → 點擊左側 「Manage Jenkins」
👉 截圖示例(紅框標注 Manage Jenkins 按鈕)
在這里插入圖片描述


2. 找到節點配置

系統管理 頁面,點擊 「Nodes and Clouds」 → 「Nodes」
👉 截圖示例(紅框標注 Nodes
在這里插入圖片描述


3. 選擇需要修改的節點

比如默認的 Built-In Node(舊版本叫 master)
👉 截圖示例(紅框標注 Built-In Node
在這里插入圖片描述


4. 修改執行器數量

找到 「# of executors」 配置項:

  • 默認值是 2
  • 改成 34(根據機器性能決定)
    👉 截圖示例(紅框標注 # of executors 輸入框)
    在這里插入圖片描述

5. 保存配置

點擊 保存(Save) 按鈕即可
👉 截圖示例(紅框標注 Save
在這里插入圖片描述


?? 提示:執行器數量并不是越多越好,需要結合機器性能來設置。
比如一臺 8 核 16G 的服務器,可以設置 2–4 個執行器;但如果構建任務非常耗 CPU/內存,還是建議保持 1–2 個,避免任務互相拖慢。


四、最佳實踐與注意事項

  1. 避免工作區沖突

    • 多個 Job 并發執行時,可能會寫入同一目錄,導致沖突。

    • 解決辦法:在 Job 配置中勾選 「Use custom workspace」 或在 Pipeline 腳本中定義獨立工作目錄。

  2. 資源分配合理

    • 如果機器性能有限,不要把執行器數量調得太高,否則任務會“搶”CPU 和內存,導致整體變慢。

    • 可以通過 Jenkins 內置的 節點標簽(Label)節點限制,將不同 Job 分配到不同 Agent 上運行。

  3. 結合并行 Pipeline

    • 在 Jenkins Pipeline 中,可以用 parallel 步驟并行運行多個 stage,配合多個執行器使用,效果最佳。

五、總結

  • 執行器(Executor) 是 Jenkins 控制并發的關鍵參數。

  • 默認值為 2,確保任務安全,但會導致任務排隊。

  • 修改執行器數量,可以讓單個 Agent 并發運行多個任務,提高構建效率。

  • 合理配置執行器數量,結合獨立工作區與 Pipeline 并行特性,能最大化利用 Jenkins 的性能。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/94847.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/94847.shtml
英文地址,請注明出處:http://en.pswp.cn/web/94847.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue3使用reactive和ref

<script setup>import { ref } from vueconst count ref(0) console.log(count.value)</script><template></template>ref需要注意&#xff0c;在script腳本區域需要加上.value&#xff0c;然后在template模板區域使用不需要帶.value

(筆記)InputChannel跨進程傳輸機制深度分析

概述 InputChannel是Android輸入系統中負責跨進程事件傳輸的核心組件&#xff0c;它建立了InputDispatcher&#xff08;SystemServer進程&#xff09;與應用程序&#xff08;App進程&#xff09;之間的高效通信通道。本文深入分析InputChannel的實現機制&#xff0c;包括socket…

AI實時故障診斷系統(實時采集信號)

1.摘要 本文設計了一套“基于Labview的旋轉機械信號分析與故障診斷系統&#xff08;可部署AI模型和實時監測設備運行狀態&#xff09;”。首先&#xff0c;LabVIEW 端構建了信號采集與設備狀態實時監測模塊和本地數據故障診斷模塊。該系統實現了“數據采集、數據處理、時頻域特…

【51單片機】【protues仿真】基于51單片機籃球計時計分器數碼管系統

目錄 一、主要功能 二、使用步驟 三、硬件資源 四、軟件設計 五、實驗現象 一、主要功能 1、數碼管顯示 1、比賽時間為15&#xff1a;00&#xff0c;甲乙隊比分默認000&#xff0c;通過按鍵修改 3、比賽運行的狀態下&#xff0c;按開始暫停鍵&#xff0c;比賽暫停&#…

[讀論文]Hunyuan 3D 系列

1.0&#xff1a; &#xff08;adaptive clasisfier guidance&#xff0c;input 輸入一個沒cam的branch&#xff1b;提高triplane分辨率&#xff09; 總結&#xff1a; 大規模再train zero123&#xff0c;但角度設置不同&#xff1b;adaptive clasisfier guidance&#xff08;f…

深入理解文本向量嵌入(Vector Embeddings):原理、實踐與應用場景

深入理解文本向量嵌入&#xff08;Vector Embeddings&#xff09;&#xff1a;原理、實踐與應用場景 1. 什么是向量嵌入&#xff1f; 文本向量嵌入&#xff08;Vector Embedding&#xff09;是一種將文本轉化為數值向量的技術&#xff0c;使得字符串之間的關聯性可以通過數值…

微論-神經網絡中記憶的演變

從微突觸到宏認知&#xff1a;論神經網絡中記憶的生成、固化與演化人腦的智能&#xff0c;并非源于單個神經元的孤立活動&#xff0c;而是誕生于由萬億突觸連接所構成的龐大而復雜的網絡動態之中。在這個網絡中&#xff0c;連接權重的強度分布——即強的約束與弱的變數——共同…

機器視覺學習-day07-圖像鏡像旋轉

圖像的鏡像旋轉分為三種&#xff0c;分別使用filpcode的參數表示&#xff1a;flipcode0&#xff0c;垂直翻轉&#xff08;x軸為中線&#xff09; 垂直翻轉可以把src沿著x軸翻轉&#xff0c;坐標從&#xff08;x,y&#xff09;翻轉為(x,-y)。flipcode>0&#xff0c;水平翻轉&…

Python備份實戰專欄第2/6篇:30分鐘搭建企業級API認證系統,安全性吊打90%的方案

30分鐘搭建企業級API認證系統&#xff0c;安全性吊打90%的方案 專欄導語&#xff1a;《從零到一&#xff1a;構建企業級Python Web自動化備份系統實戰指南》第2篇 作者簡介&#xff1a;madechango架構師&#xff0c;負責設計零安全事故的API認證系統&#xff0c;攔截100%非法請…

第6篇:鏈路追蹤系統 - 分布式環境下的請求跟蹤

項目地址&#xff1a;https://github.com/nemoob/atlas-log 開箱即用。前言 在微服務架構中&#xff0c;一個用戶請求往往會經過多個服務的協作處理。本章將實現一個輕量級的鏈路追蹤系統&#xff0c;讓日志具備分布式追蹤能力。 分布式鏈路追蹤基礎概念 鏈路追蹤的核心價值 #m…

ubuntu25.04編譯最新版本qgroundcontrol

編譯系統版本: 編譯器版本: 編譯成功效果

如何在 Docker 和AKS上使用 IIS

前言 在我們的一個客戶項目中,我們有一個混合 Swarm 集群,其中包含 Linux 和 Windows 節點。在 Windows 節點上,我們運行了許多 IIS 容器,這些容器運行著多個 Web 應用程序。在這篇博文中,我想向您展示在 Docker 容器中將網站部署到 IIS 上是多么簡單。 Internet 信息服…

uniapp 頁面favicon.ico文件不存在提示404問題解決

1. uniapp 頁面favicon.ico文件不存在提示404問題解決 1.1. 場景 在uniapp中經常出現的&#xff0c;因為找不到 favicon.ico 而報404錯誤的問題。 GET http://localhost:5174/favicon.ico 404 (Not Found)1.2. 問題原因 在document.ejs中使用link標簽相對路徑引入文件。 <…

Magicodes.IE.Pdf 生成導出PDF文件 bytes Stream FileStreamResult 下載

1、ExporterAttribute&#xff1a;導出特性 Name&#xff1a;名稱 HeaderFontSize&#xff1a;頭部字體大小 FontSize&#xff1a;正文字體大小 MaxRowNumberOnASheet&#xff1a;一個Sheet最大允許的行數&#xff0c;設置了之后將輸出多個Sheet AutoFitAllColumn&#xff1a;自…

Python LangChain RAG從入門到項目實戰10.:質量評價指標體系

好的&#xff0c;RAG (Retrieval-Augmented Generation) 系統的評估是一個多維度的問題&#xff0c;需要同時對檢索器 (Retriever) 和生成器 (Generator) 的性能進行衡量。 評估指標主要分為三大類&#xff1a;檢索質量、生成質量 和 整體系統質量。下圖清晰地展示了這些核心指…

【記錄】Copilot|Github Copilot重新學生認證通過方法(2025年7月,包括2FA和認證材料、Why are you not on campus)

文章目錄前言步驟最重要的一步前言 事實上&#xff0c;Github Copilot馬上就要開源了&#xff0c;我原本的認證過期了。但是在我體驗了眾多的代碼補全工具實在是太難用了之后&#xff0c;我覺得一天也等不了了&#xff0c;就去再一次認證了學生認證。 這次嚴格了很多&#xff…

【C語言16天強化訓練】從基礎入門到進階:Day 13

&#x1f525;個人主頁&#xff1a;艾莉絲努力練劍 ?專欄傳送門&#xff1a;《C語言》、《數據結構與算法》、C語言刷題12天IO強訓、LeetCode代碼強化刷題、洛谷刷題、C/C基礎知識知識強化補充、C/C干貨分享&學習過程記錄 &#x1f349;學習方向&#xff1a;C/C方向學習者…

單元測試到底是什么?該怎么做?

&#x1f345; 點擊文末小卡片&#xff0c;免費獲取軟件測試全套資料&#xff0c;資料在手&#xff0c;漲薪更快一、什么是單元測試&#xff1f;單元測試&#xff08;unit testing&#xff09;&#xff0c;是指對軟件中的最小可測試單元進行檢查和驗證。至于“單元”的大小或范…

PostgreSQL【應用 04】加解密擴展 pgcrypto 使用實例(加密、導出、導入、解密流程說明)

加解密擴展 pgcrypto 使用實例1.需求說明2.工具說明2.1 環境說明2.2 插件添加3.實例分析3.1 測試數據3.2 進行加密3.3 數據導出3.3.1 Navicat 導出3.3.2 copy 命令導出3.4 數據解密3.4.1 Navicat 導入3.4.2 copy 導入3.5 坑1.需求說明 從內網導出敏感數據的時候&#xff0c;對…

SDK、JDK、JRE、JVM的區別

SDK、JDK、JRE、JVM的區別一、SDK二、JDK三、JRE四、JVM五、JDK、JRE、JVM三者關系圖一、SDK SDK&#xff08;Software Development Kit&#xff0c;程序軟件開發工具包&#xff09;&#xff0c;可以認為jdk只是sdk的一種&#xff08;子集&#xff09;&#xff0c;而當提及jav…