【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

相关推荐
霸道流氓气质3 天前
GitLab CI/CD 完全指南
linux·ci/cd·gitlab
sbjdhjd3 天前
从零搭建企业级 CI/CD(下):Jenkins+GitLab+Harbor 全链路实战指南
git·servlet·ci/cd·云原生·云计算·gitlab·jenkins
用什么都重名4 天前
Git 合并两个无共同历史的分支:从报错到解决全记录
git·gitlab
master3364 天前
GitLab (Docker) 常用命令及解决方案清单
docker·容器·gitlab
qq_356408664 天前
GitLab 单机私有化部署文档(基于 Docker 环境)
docker·gitlab
lisanmengmeng6 天前
gitlab 免密配置
linux·服务器·gitlab
求知若渴,虚心若愚。6 天前
Jenkins 自动化流水线(CICD)
运维·自动化·gitlab
mnasd8 天前
Gitlab + Jenkins 实现 CICD
运维·gitlab·jenkins
鹤鸣的日常8 天前
前端运行时动态环境变量方案
前端·react.js·docker·前端框架·vue·gitlab
starvapour9 天前
Ubuntu部署gitlab频繁出现502的问题
linux·ubuntu·gitlab