JVM Server与Client运行模式

JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升.原因是:

当虚拟机运行在-client模式的时候,使用的是一个代号为C1的轻量级编译器, 而-server模式启动的虚拟机采用相对重量级,代号为C2的编译器. C2比C1编译器编译的相对彻底,,服务起来之后,性能更高.

java -version 可以直接查看出你使用的是client还是 server

Jvm client代码:

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代码:

[[email protected] ~]# 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,  配置内容大致如下

-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 Server与Client运行模式

时间: 2024-10-21 03:59:12

JVM Server与Client运行模式的相关文章

JVM的Server与Client运行模式区别与切换

概述 JVM有两种运行模式Server与Client.两种模式的区别在于,Client模式启动速度较快,Server模式启动较慢:但是启动进入稳定期长期运行之后Server模式的程序运行速度比Client要快很多.这是因为Server模式启动的JVM采用的是重量级的虚拟机,对程序采用了更多的优化:而Client模式启动的JVM采用的是轻量级的虚拟机.所以Server启动慢,但稳定后速度比Client远远要快. 1. 当前是Client or Server? 使用java -version命令就能

Java魔法堂:JVM的运行模式 (转)

一.前言 JVM有Client和Server两种运行模式.不同的模式对应不同的应用场景,而JVM也会有相应的优化.本文将记录JVM模式的信息,以便日后查阅. 二.介绍 在$JAVA_HOME/jre/bin下有client目录,分别代表JVM的两种运行模式.   client运行模式,针对桌面应用,加载速度比server模式快10%,而运行速度为server模式的10分之一.client下默认的堆容量 -Xms1M -Xmx64M   server运行模式,针对服务器应用.server下默认的堆

Java魔法堂:JVM的运行模式

一.前言 JVM有Client和Server两种运行模式.不同的模式对应不同的应用场景,而JVM也会有相应的优化.本文将记录JVM模式的信息,以便日后查阅. 二.介绍 在$JAVA_HOME/jre/bin下有client和server两个目录,分别代表JVM的两种运行模式.  client运行模式,针对桌面应用,加载速度比server模式快10%,而运行速度为server模式的10分之一.client下默认的堆容量 -Xms1M -Xmx64M   server运行模式,针对服务器应用.ser

理解Spark运行模式(二)(Yarn Cluster)

上一篇说到Spark的yarn client运行模式,它与yarn cluster模式的主要区别就是前者Driver是运行在客户端,后者Driver是运行在yarn集群中.yarn client模式一般用在交互式场景中,比如spark shell, spark sql等程序,但是该模式下运行在客户端的Driver与Yarn集群有大量的网络交互,如果客户端与集群之间的网络不是很好,可能会导致性能问题.因此一般在生产环境中,大部分还是采用yarn cluster模式运行spark程序. 下面具体还是

Spark 在yarn上运行模式详解:cluster模式和client模式

1.    官方文档 http://spark.apache.org/docs/latest/running-on-yarn.html 2.    配置安装 2.1.安装hadoop:需要安装HDFS模块和YARN模块,HDFS必须安装,spark运行时要把jar包存放到HDFS上. 2.2.安装Spark:解压Spark安装程序到一台服务器上,修改spark-env.sh配置文件,spark程序将作为YARN的客户端用于提交任务 export JAVA_HOME=/usr/local/jdk1

java -server 和 -client 的不同,及 java -server 时抛错原因

在dos窗口运行:java -server Error: missing `server' JVM at `C:\Program Files\Java\jre7\bin\server\jvm.dll'. Please install or use the JRE or JDK that contains these missing components. 网上的意思: 找到jdk安装目录下面 jre\bin 里面有 client 和 server 文件夹. 把 server 文件夹复制到 C:\

大数据技术之_03_Hadoop学习_02_入门_Hadoop运行模式+【本地运行模式+伪分布式运行模式+完全分布式运行模式(开发重点)】+Hadoop编译源码(面试重点)+常见错误及解决方案

第4章 Hadoop运行模式4.1 本地运行模式4.1.1 官方Grep案例4.1.2 官方WordCount案例4.2 伪分布式运行模式4.2.1 启动HDFS并运行MapReduce程序4.2.2 启动YARN并运行MapReduce程序4.2.3 配置历史服务器4.2.4 配置日志的聚集4.2.5 配置文件说明4.3 完全分布式运行模式(开发重点)4.3.1 虚拟机准备4.3.2 编写集群分发脚本xsync4.3.3 集群配置4.3.4 集群单点启动4.3.5 SSH无密登录配置4.3.6

【Nutch基础教程之七】Nutch的2种运行模式:local及deploy

在对nutch源代码运行ant runtime后,会创建一个runtime的目录,在runtime目录下有deploy和local 2个目录. [[email protected] runtime]$ ls deploy  local 这2个目录分别代表nutch的2种运行方式:部署模式及本地模式. 以下以inject为例,示范2种运行模式. 一.本地模式 1.基本用法: $ bin/nutch inject Usage: InjectorJob <url_dir> [-crawlId <

Spark internal - 多样化的运行模式 (下)

Spark的各种运行模式虽然启动方式,运行位置,调度手段有所不同,但它们所要完成的任务基本都是一致的,就是在合适的位置安全可靠的根据用户的配置和Job的需要管理和运行Task,这里粗略的列举一下在运行调度过程中各种需要考虑的问题 环境变量的传递 Jar包和各种依赖文件的分发 Task的管理和序列化等 用户参数配置 用户及权限控制 环境变量的传递 Spark的运行参数有很大一部分是通过环境变量来设置的,例如Executor的内存设置,Library路径等等.Local模式当然不存在环境变量的传递问