Is there a way to limit both the number of cores that java uses?
And in that same vein, is it possible to limit how much of that core is being used?
https://github.com/haosdent/jcgroup jcgroup is your best choice. You could use this library to limit the CPU shares, Disk I/O speed, Network bandwidth and etc.