【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

相关推荐
HIT_Weston7 小时前
43、【Ubuntu】【Gitlab】拉出内网 Web 服务:静态&动态服务
前端·ubuntu·gitlab
小安同学iter18 小时前
三台服务器,一套流水线:如何实现无缝自动化部署?
gitlab·jenkins
西部森林牧歌1 天前
Arbess从基础到高阶(14) - 使用Arbess+GitLab+SonarQube实现代码扫描完成后自动化部署
ci/cd·gitlab·sonarqube·arbess·tiklab devops
4***V2022 天前
GitLab Pages配置
git·gitlab·github
sulikey2 天前
从入门到精通:如何自己编写高质量的 .gitignore(面向工程实践)
git·gitee·编辑器·gitlab·github·gitignore·gitattributes
小晶晶京京2 天前
day62-gitlab和JenKins
运维·gitlab·jenkins
三天不学习4 天前
GitLab Docker 安装完整配置项说明
docker·容器·gitlab
一念一花一世界6 天前
Arbess从初级到进阶(9) - 使用Arbess+GitLab实现C++项目自动化部署
c++·ci/cd·gitlab·arbess
X***48966 天前
GitLab
gitlab
一世一生命6 天前
GitLab Package依赖管理:从 Dependabot 到 Renovate 的迁移实践和两者对比
gitlab