This is a
post by Sam Van Oort, Software Engineer at
CloudBees and contributor to the Jenkins project.
Today I’m going to show you how easy it is to tune Jenkins Java settings to
make your controllers more responsive and stable, especially with large heap sizes.
The Magic Settings:
Basics: -server -XX:+AlwaysPreTouch
GC Logging: -Xloggc:$JENKINS_HOME/gc-%t.log -XX:NumberOfGCLogFiles=5 -XX:+UseGCLogFileRotation -XX:GCLogFileSize=20m -XX:+PrintGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+PrintHeapAtGC -XX:+PrintGCCause -XX:+PrintTenuringDistribution -XX:+PrintReferenceGC -XX:+PrintAdaptiveSizePolicy
G1 GC settings: -XX:+UseG1GC -XX:+ExplicitGCInvokesConcurrent -XX:+ParallelRefProcEnabled...
Jenkins will be represented at cdCon organized by the Continuous Delivery Foundation.
We will have multiple talks and a Birds of Feather session there.
The Jenkins Contributor Summit brings together current and future contributors to the Jenkins project.
The summit brings together community members to learn, meet, and help shape the future of Jenkins.
Jenkins will be represented at the DevOps World conference.
There will be community and Continuous Delivery Foundation tracks,
and many talks from Jenkins practitioners.