You should check your servlet engine's list of supported configurations. All the speed in the world won't matter if your servlet engine has a conflict with your speedy JVM that brings your servlet to a halt. Correct me if I'm wrong, but I believe JRockit is available only for registered Weblogic users, so you can probably cross that off your list. Benchmarks are notoriously inaccurate, so you need to benchmark your application under real-world loads using each of your prospective JVM's. A VM that seemed fast for my specific applications may not be as speedy for your applications, so be wary of recommendations. There is no substitute for testing your own code. Personally, I feel that the cost of such fiddling is not justified by the return. One often gets a better return by investing in hardware (lots of memory, fast disk arrays, large network throughput and so on) than paying someone to tweak JVMs (the same goes for code "optimization").