Recently I've been searching for VPSes that allow Minecraft servers to be hosted, and surprisingly very few do. Most allow for games - but Minecraft in specific is disallowed by many.
Now it's fairly obvious why this is - it's very CPU intensive, and fairly ram hungry... But why? The answer I've gotten a lot through googling is "It's written in Java", or "Java's memory management is bad", but those aren't really answers - they're cheap cop outs.
What I really want to know, what I want to track down - is what exactly is eating up so much processing power? And given the desire to do so, what could be done to fix those issues.
I'm not looking to start a discussion on the merits of Java, or how well written Minecraft is - I'm curious if there's an actual answer, actual sections of code or ways things are done that are causing such high CPU usage, and ideally what could, theoretically, be done to fix them.