【Gitlab】gitrunner并发配置

并发介绍

涉及到并发控制的一共有4个参数: concurrent , limit ,request_concurrency,parallel

全局的配置:

复制代码
[root@iZ2vc6igbukkxw6rbl64ljZ config]# vi config.toml 
concurrent = 4  #这是一个总的全局控制,它限制了所有pipline,所有runner执行器同时可以并发执行job的总数,这里是4就是整体并发是4,其他的job只能等。
check_interval = 0

[session_server]
  session_timeout = 1800

[[runners]]
  name = "jtkj-docker"

执行器Runner配置

复制代码
[[runners]]
  limit = 2  #限制了这个runner最大可以同时并行执行2个job
  request_concurrency = 4  #这个参数控制一个runner执行器可以一次从gitlab的任务队列中获取多少个任务数,这个对于共享执行器来说比较有用,比如gitlab任务队列中有10个任务,现在有3个执行器runner都符合这些任务执行的,那么为了提高效率,设置每个同时获取3 或 4个就比较好,这样可以保证每个执行器runner都可以获取到合适数量的任务,保障了并行执行的效率;如果一个执行器配置了10,那么它一次就拿完了所有的任务,但是它要一次执行不行了那么多任务,其他执行器要不能获取到任务,就只能空闲了。

上面3个参数修改了要重启gitlab-runnner

parallel配置

复制代码
codescan:
  stage: codescan
  tags:
    - build
  only:
    - master
  script:
    - echo "codescan"
    - sleep 5;
  parallel: 3  #配置在stage中, 这个参数就是表示: 这个job在执行时要同时启动3个

在Gitlab流水线上看到的效果就是:

但是这个并发的job数也是受控上面的全局参数concurrent 和runner的limit并发数控制的,不能超过它 ,我在测试列中设置了concurrent =4 parallel=6 那么当这个pipline启动时,也就并行4job,不是 6

相关推荐
Aliex_git5 天前
Dockerfile 优化实践笔记
笔记·学习·gitlab
成为你的宁宁6 天前
Jenkins 自动化部署前后端分离若依项目全攻略:涵盖环境配置、Maven/Node.js 工具安装、GitLab 项目协同,及前后端构建、服务器推送与代码更新验证全步骤
node.js·自动化·gitlab·jenkins·maven
sunshinebo6 天前
一次 GitLab 无法启动的排查:Docker 日志把 500G 磁盘打满
docker·eureka·gitlab
何以不说话6 天前
DevOps、Git 和 GitLab
git·gitlab·devops
ZAEQgyKFs9 天前
永磁同步电机模型预测电流控制+滑模控制 [1]速度环采用滑模控制 滑模控制器采用新型趋近律与扰...
gitlab
马克Markorg9 天前
使用 Docker Compose 本地部署 GitLab 教程
docker·容器·gitlab
大尚来也12 天前
CI/CD 流水线搭建实战:GitHub Actions vs GitLab CI 2026 深度对比与选型指南
ci/cd·gitlab·github
ProgramHan13 天前
github、gitlab、gitee分别都是什么,为什么不能访问?
gitee·gitlab·github
Aliex_git15 天前
Gitlab Runner 配置实践
笔记·学习·ci/cd·gitlab
阿莫西林夹馍15 天前
GitLab的IP地址发生变更导致Runner掉线
gitlab