我们最近从Linux上的两个服务器迁移项目到VM上的RedHat Enterprise。它们都是在OC4J 10.1.3.5上运行的J2EE应用程序
我们发现一个有趣的现象是,在Linux上运行的OC4J JVM实例实际上会占用比Solaris上更多的堆。例如,我们的一个应用程序在刚启动时在Solaris上只消耗30-40MB的堆大小,而在Linux上,它在启动时已消耗400MB,这是差异的10倍。其他申请也发生了类似的情况。
我们检查过所有JVM版本和启动参数是否相同。
我已经四处搜索,发现了类似的问题: Difference betweeen jvm on linux and solaris machines
但是,我找不到关于这个问题的任何技术文章,是因为Linux机器上的某些配置问题而不是JVM本身?
我们正在使用JDK 1.6.0_38-b05 64位
编辑: 以下是JVM启动参数:-server -Xms2560M -Xmx2560M