我在我的个人计算机上实现了Java应用程序。我的机器上的应用程序执行时间大约需要20秒。我迁移到的服务器机器是我个人机器的10倍。不幸的是,应用程序占用此服务器机器两倍的执行时间。我非常确定两台机器上的JVM版本和设置是相同的,都可以作为服务器而不是客户端,并且都运行Windows 7
我唯一怀疑我机器上的操作系统是原生的,而服务器的操作系统是在具有专用大容量内存和2个物理处理器的虚拟机上运行的。我对吗?尽管硬件功能强大了10倍,但在Windows虚拟机中运行Java应用程序是否会影响性能?
答案 0 :(得分:0)
我有大量服务器系统(来自Sun)的第一手经验,它具有巨大的并发I / O吞吐量,但每个特定的CPU核心功能不如高端台式机。您正在运行的任务很可能是以未经优化的方式加载该系统。
另一方面,还有许多其他因素需要考虑,例如在您进行测量时该系统的其余部分正在做什么,您正在做什么,JIT编译器是否正确参与等等。