I am beginning the process of changing to pipelines.
We currently use flows to run thousands of jobs(builds).
Say we have 6000 builds to run on 100 Windows virtual machines and 6000 builds to run on 100 Linux virtual machines.
To reduce available virtual machines with no jobs to run we try to keep the queue as full as possible.
Each job takes between 1 - 20 min to execute.
I need a way to not over load Jenkins.
With our current workflow we have to restart Jenkins every couple of days as it becomes sluggish (we just purchased and are using a new server).
We have not determined if Flows with Flows is a contributing factor but are beginning testing with Pipelines next week.
We believe the number of jobs in the queue is the cause of our problems, but we have not found a better solution than having that many jobs.
My thought was to try and trickle jobs to the queue. I would like to add a new job to the queue only if it drops below say 1000.
I am open to other suggestions.