Jenkins性能优化
jenkins性能优化
1、评估安装插件,插件数量过多,会导致界面加载慢;
2、添加slave节点;
01、禁止在master上构建性能耗费大的任务,可以使用标签的方式使其在slave上构建;
02、减少定时构建或轮询SCM构建时间或次数;实际生产中,这两个一般是不配置的;
3、提高磁盘IO性能;
4、可以用nginx增加缓存功能;
5、无论是master还是slave,执行器的数量不要大于CPU的核心数;
6、设置合适的保持构建天数和保持构建的最大个数;释放磁盘空间;
7、maven仓库设置成国内源
8、yarn设置为国内镜像
npm install -g yarn
npm install --registry=https://registry.npm.taobao.org
yarn config set registry https://registry.npm.taobao.org --global
yarn config set disturl https://npm.taobao.org/dist --global
9、nodejs(npm)设置为国内镜像
临时设置:npm --registry https://registry.npm.taobao.org install xxx
全局设置:npm config set registry https://registry.npm.taobao.org
10、取消jenkins的定时清理工作空间任务
一些前端项目在构建时往往需要下载一些依赖库,在构建时,到yarn install步骤的时候会等很长一段时间,即使全局定义指定淘宝的仓库也一样,然后研发开始找事情,经过测试,在不删除工作空间的情况下,构建时会优先使用本地缓存,构建速度会大幅度提升,但是jenkins有定时清理工作空间的功能,需要关掉它;
cat jenkins.log|grep Workspace 查看jenkins日志,会发现,每天都会执行清理workspace的任务;
2021-08-22 00:51:19.309+0000 [id=1038] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Started Workspace clean-up
2021-08-22 00:51:19.321+0000 [id=1038] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Finished Workspace clean-up. 9 ms
2021-08-23 00:51:19.309+0000 [id=1278] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Started Workspace clean-up
2021-08-23 00:51:19.328+0000 [id=1278] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Finished Workspace clean-up. 18 ms
2021-08-24 00:51:19.308+0000 [id=1566] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Started Workspace clean-up
2021-08-24 00:51:19.315+0000 [id=1566] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Finished Workspace clean-up. 5 ms
2021-08-25 00:51:19.309+0000 [id=1808] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Started Workspace clean-up
2021-08-25 00:51:19.334+0000 [id=1808] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Finished Workspace clean-up. 24 ms
2021-08-26 00:51:19.309+0000 [id=2049] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Started Workspace clean-up
2021-08-26 00:51:19.314+0000 [id=2049] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Finished Workspace clean-up. 4 ms
设置方法:Manage Jenkins ---> Script Console 执行命令:hudson.model.WorkspaceCleanupThread.disabled = true
注意:每次重启jenkins都要设置下;

JVM性能优化
JENKINS_JAVA_OPTIONS=”-Djava.awt.headless=true -Xms10240m -Xmx10240m -XX:MaxNewSize=1024m -XX:MaxPermSize=1024m”
1、-Xmx:使用的最大堆内存大小;表示java虚拟机堆区内存可被分配的最大上限,默认为物理可用内存的1/4或者1G,最小为2M;
2、-Xms:使用的最小堆内存大小;初始堆大小,表示java虚拟机堆区内存初始内存分配的大小;默认为物理可用内存的1/64,最小为1M;
开发过程中,通常会将-Xms 与-Xmx两个参数的配置相同的值,其目的是为了能够在java垃圾回收机制清理完堆区后不需要重新分隔计算堆区的大小而浪费资源。
3、-XX:newSize:表示新生代初始内存的大小,应该小于-Xms的值;
4、-Xmn:至于这个参数则是对 -XX:newSize、-XX:MaxnewSize两个参数的同时配置,也就是说如果通过-Xmn来配置新生代的内存大小,那么-XX:newSize = 5、-XX:MaxnewSize = -Xmn,虽然会很方便,但需要注意的是这个参数是在JDK1.4版本以后才使用的
6、-XX:PermSize:内存的永久保存区域大小;表示非堆区初始内存分配大小(方法区)
7、-XX:MaxPermSize:最大内存的永久保存区域大小;表示对非堆区分配的内存的最大上限(方法区)
最大堆内存与最大非堆内存的和绝对不能够超出操作系统的可用内存
Jenkins性能优化的更多相关文章
- 01.SQLServer性能优化之----强大的文件组----分盘存储
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 文章内容皆自己的理解,如有不足之处欢迎指正~谢谢 前天有学弟问逆天:“逆天,有没有一种方 ...
- 03.SQLServer性能优化之---存储优化系列
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 概 述:http://www.cnblogs.com/dunitian/p/60413 ...
- Web性能优化:What? Why? How?
为什么要提升web性能? Web性能黄金准则:只有10%~20%的最终用户响应时间花在了下载html文档上,其余的80%~90%时间花在了下载页面组件上. web性能对于用户体验有及其重要的影响,根据 ...
- Web性能优化:图片优化
程序员都是懒孩子,想直接看自动优化的点:传送门 我自己的Blog:http://cabbit.me/web-image-optimization/ HTTP Archieve有个统计,图片内容已经占到 ...
- C#中那些[举手之劳]的性能优化
隔了很久没写东西了,主要是最近比较忙,更主要的是最近比较懒...... 其实这篇很早就想写了 工作和生活中经常可以看到一些程序猿,写代码的时候只关注代码的逻辑性,而不考虑运行效率 其实这对大多数程序猿 ...
- JavaScript性能优化
如今主流浏览器都在比拼JavaScript引擎的执行速度,但最终都会达到一个理论极限,即无限接近编译后程序执行速度. 这种情况下决定程序速度的另一个重要因素就是代码本身. 在这里我们会分门别类的介绍J ...
- 02.SQLServer性能优化之---牛逼的OSQL----大数据导入
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 上一篇:01.SQLServer性能优化之----强大的文件组----分盘存储 http ...
- C++ 应用程序性能优化
C++ 应用程序性能优化 eryar@163.com 1. Introduction 对于几何造型内核OpenCASCADE,由于会涉及到大量的数值算法,如矩阵相关计算,微积分,Newton迭代法解方 ...
- Android性能优化之利用LeakCanary检测内存泄漏及解决办法
前言: 最近公司C轮融资成功了,移动团队准备扩大一下,需要招聘Android开发工程师,陆陆续续面试了几位Android应聘者,面试过程中聊到性能优化中如何避免内存泄漏问题时,很少有人全面的回答上来. ...
随机推荐
- QT快速入门
QT快速入门 本文档将介绍QT工程的创建.UI界面布局,并以计数器为例了解QT中多线程的用法,最终完成一个基础的QT项目. 1 创建QT工程文件 在安装好QT之后,能够在其安装组件中找到Qt Crea ...
- Go语言学习——函数二 defer语句
函数 package main import "fmt" // 函数:一段代码的封装 func f1(){ fmt.Println("Hello 中国!") } ...
- 用python实现输入三边判断能否组成三角形
# -*- coding: utf-8 -*-# Form implementation generated from reading ui file 'sanjiaoxing.py'## Creat ...
- undefined与null与?. ??
undefined: undefined是全局对象的一个属性,在一下情况下都是undefined: 当一个变量没有被赋值: 当一个函数没有返回值: 当某个对象不存在某个属性却去访问: 当函数定义了形参 ...
- 【单片机】CH32V103v8t6开发板调试笔记
一.开发板样式和资源 找官网的商务申请了一块开发板,打算试一下串口打印程序测试,发现网上关于这个板子的相关资料特别少,为方便后来人,就顺便记录一下,板子资源如下图所示. 板子芯片的引脚排布图 二.使用 ...
- 一些基本的jar包
jackson与前端传送数据 <dependency> <groupId>com.fasterxml.jackson.core</groupId> <arti ...
- 二进制固件函数劫持术-DYNAMIC
背景介绍 固件系统中的二进制文件依赖于特定的系统环境执行,针对固件的研究在没有足够的资金的支持下需要通过固件的模拟来执行二进制文件程序.依赖于特定硬件环境的固件无法完整模拟,需要hook掉其中依赖于 ...
- PostgreSQL Array 数组类型与 FreeSql 打出一套【组合拳】
前言 PostgreSQL 是世界公认的功能最强大的开源数据库,除了基础数据类型 int4/int8/varchar/numeric/timestamp 等数据类型,还支持 int4[]/int8[] ...
- Linux下删除Mysql
1.检查mysql服务并关闭相应的进程 [root@bp18425116f0cojd1vnz ~]# ps -ef |grep mysql root 1492 1 0 10:23 ? 00:00:00 ...
- 支付宝开放平台--网页&移动应用(一)
前提是先在支付宝上签约自己需要的支付宝功能,然后支付宝开放平台才能设置你需要的功能 一:支付宝开放平台登录 登录进入支付宝开放平台 二:根据自己的需求创建应用(我是用的网页&移动应用) 三:点 ...