区别:
(1)-Server模式启动速度较慢,但是一旦启动运行后性能会有很大的提升;
(2)JVM工作在Server模式可以大大提升性能,但应用启动会比client模式慢大概10%;
(3)当该参数不指定时,虚拟机启动检测主机是否为服务器,如果是则以Server模式启动,否则以client模式启动,J2SE5.0检测的根据是至少2个cpu和最低2G内存。
(4)JVM Server模式下Method call性能高于client模式10倍,Hash性能高于client模式2倍左右。
(5)当JVM用于启动GUI界面的交互应用时适合于使用client模式,当JVM用于运行服务器后台程序时建议用Server模式。
(6)JVM在client模式默认-Xms是1M,-Xmx是64M;JVM在Server模式默认-Xms是128M,-Xmx是1024M。我们可以通过运行:java -version来查看jvm默认工作在什么模式。
(7)位置:jre/bin/server jre/bin/client 两个jvm文件大小都不一样。
(8)如果没有指定JVM版本,会自动根据OS和硬件环境进行识别。windows下默认是client,Unix下默认Server
Server-Class Machine Detection,官方描述参考:http://download.oracle.com/javase/1.5.0/docs/guide/vm/server-class.html
其中一条Note: For J2SE 5.0, the definition of a server-class machine is one with at least 2 CPUs and at least 2GB of physical memory.
可以通过 java -version 查看运行模式。
各种性能对比图:
参考资料:
http://developer.51cto.com/art/201009/228035.htm
http://blog.csdn.net/fbysss/article/details/5815745
相关推荐
介绍常用的JVM参数,包括内存分配、堆栈分配、虚拟机运行模式以及调试跟踪参数。 第四课 GC的算法和种类 引用计数 标记清除 复制算法 标记压缩 可触及性 本章是理论性较强的一章,主要介绍GC的基本算法和思想,本...
Soya是什么?Soya是一门基于JVM上的动态编程语言,现在已经开源 它的特点是 ...Soya语言由Java编写并且被编译成Java字节码在JVM上运行,能调用其他Java代码,包括所有的Java API。 标签:Soya
主要介绍了Java虚拟机JVM的client模式和Server模式两者的区别和联系
JRockit还提供了更细致的功能用以观察JVM的运行状态,主要是独立的GUI控制台(只能适用于使用Jrockit才能使用jrockit81sp1_141_03自带的console监控一些cpu及memory参数)或者WebLogic Server控制台。 Bea JRockit ...
1、一切JAVA代码都运行在JVM之上,只有深入理解虚拟机才能写出更强大的代码,解决更深层次的问题。 2、JVM是迈向高级工程师、架构师的必备技能,也是高薪、高职位的不二选择。 3、同时,JVM又是各大软件公司笔试、...
铈编程语言Cerium是JVM的一种编程语言。该项目将ANTLR用于词法分析器和解析器生成器***这个项目是在阅读了Terence Parr的“语言实现模式”和“权威ANTLR参考”这本书之后得到的启发。*** ***该语言基于这些书中的...
(1)执行脚本提交任务,实际是启动一个SparkSubmit的JVM进程 (2)SparkSubmit类中的main方法反射调用Client的main方法 (3
java技术栈,包括 java基础,jvm,java集合,java并发,IO, 设计模式,http,网络,操作系统,mysql,redis,spring,mybatis,数据结构,算法等。持续更新中,欢迎star! 各领域数据集,工具源码,适合毕业设计、...
算法分析:通过数学方法分析算法的时间复杂度(运行时间随数据规模增长的速度)和空间复杂度(所需内存大小)来评估其效率。 学习算法与数据结构不仅有助于理解程序的内部工作原理,更能帮助开发人员编写出高效、...
RxJava通过扩展观察者模式来工作,以支持数据/事件序列。 它还允许您通过添加的运算符声明性地将序列组合在一起,同时抽象出诸如低级线程,线程安全性,并发数据结构和同步之类的问题。 RxJava通常用于运行简单的...
概述该项目致力于建立一个综合基准,以比较JVM平台上开源压缩编解码器的时间和空间效率。 需要通过纯Java接口或JNI从Java(从而从任何JVM语言)访问包含的编解码器; 并且需要支持基本块模式(字节数组输入,字节...
毕设&课设&项目&实训-【java开发笔记指北】涵盖java、JVM、Spring、常用框架、中间件、数据库、数据结构与算法、设计模式 【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、...
运行时数据区 垃圾回收 类加载过程 类加载器 双亲委派 JVM性能调优监控工具 设计模式 消息中间件 RocketMQ 概念 RocketMQ 特性 RocketMQ 集群 RocketMQ 事务 RocketMQ 常见问题 数据库 Redis 基本数据结构 进阶使用 ...
这是使用 maven、cucumber-jvm 和 selenium webdriver 的测试框架的骨架。 这遵循使用 PageFactory 实例化页面对象的页面对象设计模式。 这包含一个用于 BBC 网页演示目的的场景。 如何运行测试: 要在本地运行...
运行时常量池内存溢出(在 JDK8 中,永久代已完全被元空间(Meatspace)所取代,故此处抛出错误和堆内存溢出一样) Design Pattern 各种经典的设计模式以及简单例子 工厂模式 适配器模式 过滤器模式 代理模式 MVC模式 ...
JVM statistics monitoring tool,用于收集 HotSpot 虚拟机各方面的运行数据 jinfo 显示虚拟机配置信息 jmap 生产虚拟机的内存快照 dump 文件 jhat 分析 dump 文件 jstack 显示虚拟机的线程快照 2、jps ...
kpspemu 目前在Kotlin通用...)YouTube编码视频博客顶点解码器[] [] :当前状态: 现在,它能够以解释模式运行一些自制程序,并开始运行一些早期的简单商业游戏。 目的是创建一种可移植的模拟器,该模拟器可以在JVM
java代码不直接与底层操作系统打交道,而是通过JVM这个中间介质间接与底层操作系统交互,JVM屏蔽了各操作系统之间的差异,不同版本的操作系统就有不同版本的JVM,只有在JVM这个环境下的java程序才能运行。
在附加模式下,Easy-byte-coder取决于jvm运行时环境变量,请确保存在JAVA_HOME 。座席模式不需要此设置。 以附加模式开始: java -Xbootclasspath/a:$JAVA_HOME/lib/tools.jar -jar bootstrap.jar 接下来,选择要...
它采用了“一次编写,到处运行”的原则,即一次编写的程序可以在不同的操作系统上运行,这得益于Java虚拟机(JVM)的存在。JVM是Java的核心组成部分,它可以将Java代码解释成特定平台上的机器码,从而实现跨平台运行...