读JVM相关的一些笔记
1、JVM的运行模式
vm一般有两种运行模式,client和server(JDK 7 后有第三种 Tiered server,后续会涉及到)。
- client : 启动快,内存占用少,JIT编译器生成代码的速度也更快。
- Server:提供了更为复杂的生成代码优化功能,这个功能对于服务器应用来说更为重要,大多数Server模式的JIT编译优化都要消耗额外的时间用以收集更多的应用程序行为信息,为应用程序运行生成更为优化的代码。
- 在JDK7 开始,提供了一种Tiered Server模式,结合了上面两种的长处,即快速启动并且能够高效生成代码。可以通过:-server -XX:+TieredCompilation 命令选项启用。
2、JVM 32还是64位的选择
原则是由应用程序的内存占用来决定,有如下原则可以参考:
| OS | java堆大小 | 32位还是64位JVM |
| win | <1300M | 32位JVM |
| win | 1300M<x<32G | 使用-d64 -XX:+UseCompressedOops 启用64位JVM |
| win | >32G | 使用-d64 启用64位JVM |
| linux | <2G | 32位JVM |
| linux | 2G<x<32G | 64位 |
| linux | >32G | 64位 |
| solaris | <3G | 32位 |
| solaris | 3G<x<32G | 64位 |
| solaris | >32G | 64位 |
读JVM相关的一些笔记的更多相关文章
- JVM相关参数配置和问题诊断<转>
原文连接:http://blog.csdn.net/chjttony/article/details/6240457 1.Websphere JVM相关问题诊断: 由JVM引起的Websphere问题 ...
- 3.1日 重温JVM相关信息
1.JDK.JRE.JVM的关系: JDK是java开发的必备工具箱,JDK其中有一部分是JRE,JRE是JAVA运行环境,JVM则是JRE最核心的部分. 2.JVM的组成: JVM由4大部分组成:C ...
- JVM相关知识
Java虚拟机学习分享最近主要在学习JVM相关知识,-知识主要来源<深入理解JAVA虚拟机>,深有感触,结合自己的理解,整理出一些经验,由于篇幅较长,就把链接帖出来,希望对大家有所帮助: ...
- JVM规范系列开篇:为什么要读JVM规范?
许多人知道类加载机制.JVM内存模型,但他们可能不知道什么是<Java虚拟机规范>.对于Java开发来说,<Java虚拟机规范>才是最为官方.准确的一个文档,了解这个规范可以让 ...
- 了解java虚拟机—JVM相关参数设置(2)
1. JVM相关参数设置 JVM相关配置 -XX:+PrintGC 两次次YoungGC,两次FullGC. -XX:+PrintGCDetails 打印GC时的内存,并且在程序结束时打印堆内存使 ...
- 几个与JVM相关的JDK工具:jps, jstat, jmap
在项目中遇到OOM(Out of Memory)的问题,为了分析内存和JVM的垃圾回收器GC问题,一并把JVM相关的一些工具也研究了一下: jps:Java进程查看工具,实际上它和Unix/Linux ...
- 【JVM】调优笔记2-----JVM在JDK1.8以后的新特性以及VisualVM的安装使用
一.JVM在新版本的改进更新以及相关知识 1.JVM在新版本的改进更新 图中可以看到运行时常量池是放在方法区的 1.1对比: JDK 1.7 及以往的 JDK 版本中,Java 类信息.常量池.静态变 ...
- [转]【JVM】调优笔记2-----JVM在JDK1.8以后的新特性以及VisualVM的安装使用
[From]https://www.cnblogs.com/sxdcgaq8080/p/7156227.html 隔壁的,加个引用做书签! [JVM]调优笔记2-----J ...
- JVM相关笔记
类的加载过程 加载阶段 主要完成以下3件事情:1.通过“类全名”来获取定义此类的二进制字节流2.将字节流所代表的静态存储结构转换为方法区的运行时数据结构3.在java堆中生成一个代表这个类的java. ...
随机推荐
- Android的ImageView介绍-android学习之旅(二十二)
ImageView简介 imageView继承于View,主要用于显示图片,凡是Drawable对象都可以用它显示. ImageView直接派生了ImageButton和ZoomButton等组件. ...
- 【一天一道LeetCode】#326. Power of Three
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Given a ...
- Linux下多线程编程遇到的一些问题
今天在学习了Linux的多线程编程的基础的知识点.于是就试着做了一个简单的Demo.本以为会得到预期的结果.不成想却遇到了意想不到的问题. 代码展示 我的C 代码很简单,就是一个简单的示例程序,如下: ...
- Java采用JDBC的方式连接Hive(SparkSQL)
前两天,由于系统的架构设计的原因,想通过Java直接访问Hive数据库,对于我这个Java以及Hadoop平台的菜鸟来说,的确是困难重重,不过,还好是搞定了.感觉也不是很麻烦.这篇文章,作为一个感想记 ...
- [GitHub]第七讲:GitHub issues
文章转载自:http://blog.csdn.net/loadsong/article/details/51591701 Github 上的每个项目仓库,都有三套基础设置可供使用:一个是通过 Gith ...
- java 判断是否是周末
package untitled7; import java.util.Date; import java.text.SimpleDateFormat; import java.util.Calend ...
- XML文档操作之JAXP下实现
JAXP是java API for xml PRocessing的缩写. 其API可以在javax.xml.parsers 这个包中找到.这个包向用户提供了两个最重要的工厂类,SAXParserFac ...
- General Ledger Useful SQL Scripts
General Ledger Useful SQL Scripts – Oracle Applications 11i Contents GL Set of Books Configuration O ...
- java设计模式---调停者模式
中介者模式(Mediator):用一个中介对象来封装一系列的对象交互.中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互. 通用类图: 举例:在一个公司里面 ...
- Struts2 源码剖析 控制部分-----1
这部分着重分析从我们发出一个uri请求,一直到代码运行到我们自己写的action类为止,struts的控制部分的代码(还有数据流部分,我们后面再分析) 已经用了快1年多的struts2了,一直认为对开 ...