We are setting up a new server for integration build. The original integration server can finish the "mvn install" in 3 minutes in a Linux box. Now by moving to a Windows 2012 server on VM, it's down to 9 minutes. The "mvn test" part alone costs 7 minutes. Lots of those tests are following the same pattern: 1. Start a fresh JVM 2. Load test data from files/excel spreadsheets into in-memory database 3. Run queries against that database, validate results
In your opinion, how can we improve this VM's performance? The server already has 16GB of Memory, 256GB of space, 8 vCPUs.
And in general, as a build server, most of work are like this: 1. Read the thousands of files from the workspace, 2. Compile the above source code, 3. Generate thousands of .class files. 4. Jar/Zip these thousands of files. 5. Copy the jars zips files to somewhere else.
These seems more workload on CPU and Disk I/O rather more than RAM, right?