码迷,mamicode.com
首页 > 其他好文 > 详细

JVM client模式和Server模式的区别

时间:2015-03-14 19:48:02      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

  JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升。JVM如果不显式指定是-Server模式还是-client模式,JVM还能够根据下列原则进行自动判断(适用于Java5版本或者Java以上版本)。

 

  JVM工作在Server模式可以大大提高性能,但应用的启动会比client模式慢大概10%。当该参数不指定时,虚拟机启动检测主机是否为服务器,如果是,则以Server模式启动,否则以client模式启动,J2SE5.0检测的根据是至少2个CPU和最低2GB内存。

  当JVM用于启动GUI界面的交互应用时适合于使用client模式,当JVM用于运行服务器后台程序时建议用Server模式。

 

  JVM在client模式默认-Xms是1M,-Xmx是64M;JVM在Server模式默认-Xms是128M,-Xmx是1024M。我们可以通过运行:java -version来查看jvm默认工作在什么模式。

 

  启动client jvm 和server jvm的方式如下:
  java -client yourclass
  java -server yourclass

 

   更改默认java.exe调用的jvm.dll,这个由jvm.cfg决定。 

  32位的虚拟机在目录JAVA_HOME/jre/lib/i386/jvm.cfg,

  64位的在JAVA_HOME/jre/lib/amd64/jvm.cfg, 目前64位只支持server模式。

 

  改变32位的虚拟机java.exe默认调用的jvm.dll。

  编辑%JAVA_HOME%\jre\lib\i386\jvm.cfg 
  里面第一行写的是 -client 默认就是client版本 ,把第二行的-server KNOWN 放到第一行, 如下面所示
  -server KNOWN
  -client KNOWN
  -hotspot ALIASED_TO -client
  -classic WARN
  -native ERROR
  -green ERROR
  改完保存,然后看看默认版本:
  C:\java -version

 

  看看你下面的这两个文件,是不是尺寸差别很大?
  %JAVA_HOME%/jre/bin/client/jvm.dll
  %JAVA_HOME%/jre/bin/server/jvm.dll
       Jvm动态库有client和server两个版本,分别针对桌面应用和服务器应用做了相应的优化,client版本加 载速度较快,server版本加载速度较慢但运行起来较快。
       让Tomcat 使用Server版本的jvm吧  在开始菜单 tomcat5 ->tomcat config的java属性中 有一项 jvm路径 指向server目录下的jvm就行了。

 

  

JVM client模式和Server模式的区别

标签:

原文地址:http://www.cnblogs.com/lnlvinso/p/4338028.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!