Pain point has always been CPU usage on a single threaded level. Nowadays servers are optimized to the point where we squeeze all of the performance out of the CPU and run multiple instances of MC in order to accomplish that on a multi-threaded level. You can easily hold 500 players concurrent with zero lag on as little as 16GB of RAM and an E3v3 processor. You might say this is a lot of resources, but compare it with other FPS games and how many players they hold on single instances, and you'll realize Minecraft is in it's own league.
Also, due to how much CPU is a bottleneck for MC, Cloud providers are avoided at all costs. 2.2ghz (AWS) is not acceptable at all for the use case.
Minecraft servers are extremely optimized nowadays -- I have no clue where the rumor started that Java was the pain point.