JVM的Server/Client模式
2017-08-14 21:44
766 查看
JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升。原因是:
当虚拟机运行在-client模式的时候,使用的是一个代号为C1的轻量级编译器,而-server模式启动的虚拟机采用相对重量级,代号为C2的编译器. C2比C1编译器编译的相对彻底,,服务起来之后,性能更高。
Java -version
可以直接查看出你使用的是client还是 server。
Jvm client代码:
[java] view
plain copy
C:\Documents and Settings\Administrator>java -version
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) Client VM (build 17.0-b16, mixed mode, sharing)
Jvm server代码:
[java] view
plain copy
[root@kaifa02 ~]# java -version
java version "1.6.0_06"
Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
Java HotSpot(TM) Server VM (build 10.0-b22, mixed mode)
两种模式的切换可以通过更改配置(jvm.cfg配置文件)来实现:
32位的虚拟机在目录JAVA_HOME/jre/lib/i386/jvm.cfg, 64位的在JAVA_HOME/jre/lib/amd64/jvm.cfg,目前64位只支持server模式, 配置内容大致如下:
[java] view
plain copy
-server KNOWN
-client KNOWN
-hotspot ALIASED_TO -client
-classic WARN
-native ERROR
-green ERROR
一般只要变更 -server KNOWN 与 -client KNOWN 两个配置位置先后顺序即可,前提是JAVA_HOME/jre/bin 目录下同时存在 server 与client两个文件夹,分别对应着各自的jvm。 缺少其中一个,切换模式就会报错。
当虚拟机运行在-client模式的时候,使用的是一个代号为C1的轻量级编译器,而-server模式启动的虚拟机采用相对重量级,代号为C2的编译器. C2比C1编译器编译的相对彻底,,服务起来之后,性能更高。
Java -version
可以直接查看出你使用的是client还是 server。
Jvm client代码:
[java] view
plain copy
C:\Documents and Settings\Administrator>java -version
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) Client VM (build 17.0-b16, mixed mode, sharing)
Jvm server代码:
[java] view
plain copy
[root@kaifa02 ~]# java -version
java version "1.6.0_06"
Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
Java HotSpot(TM) Server VM (build 10.0-b22, mixed mode)
两种模式的切换可以通过更改配置(jvm.cfg配置文件)来实现:
32位的虚拟机在目录JAVA_HOME/jre/lib/i386/jvm.cfg, 64位的在JAVA_HOME/jre/lib/amd64/jvm.cfg,目前64位只支持server模式, 配置内容大致如下:
[java] view
plain copy
-server KNOWN
-client KNOWN
-hotspot ALIASED_TO -client
-classic WARN
-native ERROR
-green ERROR
一般只要变更 -server KNOWN 与 -client KNOWN 两个配置位置先后顺序即可,前提是JAVA_HOME/jre/bin 目录下同时存在 server 与client两个文件夹,分别对应着各自的jvm。 缺少其中一个,切换模式就会报错。
相关文章推荐
- JVM -client和-server模式性能比较
- jvm的运行模式 client和 server两种
- JVM -server和-client模式
- JVM client模式和Server模式的区别
- 横向对比JVM Server模式和Client模式
- 转:JVM Server与Client运行模式
- Java虚拟机JVM之server模式与client模式的区别
- java虚拟机--jvm client模式与server模式的区别
- JVM的Server与Client运行模式区别与切换
- JVM client模式和Server模式的区别
- JVM的Server与Client运行模式区别与切换
- JVM的Client模式与Server模式
- JVM的Server模式和Client模式
- JVM的Client模式与Server模式
- JVM client模式和Server模式的区别
- JVM client模式和Server模式的区别
- java并发编程实践学习(三)JVM的server模式和client模式
- [JAVA学习笔记-94]JVM的client与server模式
- JVM的Client模式与Server模式
- 如何判断JVM是运行在Client模式还是Server模式?