
jvm
iteye_14910
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
jvm学习笔记(1)class文件
简述class文件是什么?稍微接触过java的同学都会说:就是java源文件编译后的.class文件。这句话虽然对,但是不够准确。其他语言,例如scala,jruby等,都可以编译出class文件。class文件是能被jvm识别和运行的一种文件格式。它是八位的二进制流文件。今天就跟大家一起学习class文件的格式整体结构用ultraedit等工具打开class文件,看到的都是二进...原创 2011-11-21 23:46:45 · 141 阅读 · 0 评论 -
jvm学习笔记(2)多线程的相关原理
简介本文是尝试从虚拟机的角度来分析java线程的一些本质线程模型java的线程模型可以通过下图来说明:一个对象都有一个相关的锁,每次只能由获得它的一个线程来操作。获得它的线程可以wait,放弃锁,进入等待区域,待被唤醒notify后,它会重新查看锁的状态,参与锁的竞争虚拟机实现查看class文件的汇编代码,可以看到,进入同步区域和退出同步区域分别由两条指令 monitor...原创 2011-11-21 23:55:37 · 126 阅读 · 0 评论 -
jvm学习笔记(3)内存管理
整体架构当一个java类文件被jvm装载进来,就需要创建对象,涉及到内存管理了。先来看看jvm内部的体系结构pc寄存器对汇编有一定了解的同学都明白这个概念。我们可以简单把它看做是当前线程所执行的字节码的行号。有什么用呢。当执行完一条指令的时候,需要跳转到下一条指令,就得靠它了java虚拟机栈是线程私有的,跟线程的生命周期相同。描述的是一个java方法执行的内存模型:当一个...原创 2011-11-21 23:57:03 · 115 阅读 · 0 评论 -
jvm学习笔记(4)垃圾回收算法分析
简述:垃圾回收算法有很多种,每种有各自的适用场合,各有千秋,如何在不同的场合搭配使用是我们要考虑的问题引用计数这是最简单最原始的算法。原理很简单,对象生成后,有一个相关联的计数器,当有一个地方引用时,计数器加1;当引用失效时,计数器减1。jvm定期扫描对象时,发现计数器为0的对象就可以清除。这个算法的特点是实现简单,速度快。不足之处在于:每次分配和指针操作都需要额外的操作来更新相...2011-11-22 00:00:01 · 130 阅读 · 0 评论 -
jvm学习笔记(5)垃圾收集器介绍
简述:上一篇系统学习了各种垃圾算法。现在就看看jvm(HopSpot)提供了那些垃圾收集器,怎样搭配使用。先回忆了,然后思考以下问题:新生代和老年代分别用什么算法合适?Serial收集器略懂英文的同学大概明白这个词的意思,串行,连续的。没错,这个收集器很简单,当要进行gc时,就暂停所有线程。用复制算法执行完,继续所有线程。又用餐巾纸的例子来说明,清洁大妈高喊一声“stop”,然后...原创 2011-11-22 00:03:06 · 153 阅读 · 0 评论 -
jvm学习笔记(6)类加载机制
简述我们要运行java程序,必须保证jvm已经加载类所需的类。这个过程是怎样的呢类的生命周期包括了装载,连接(包括验证、准备和解析)和初始化加载将二进制字节码读入jvm。包括以下阶段:1.通过类的全限定名获得定义此类的二进制数据流2.将字节流转化为方法区的内部数据结构3.在jvm堆中生成java.lang.Class实例,成为java程序与内部数据结构之间的接口怎么生...2011-11-22 00:05:07 · 126 阅读 · 0 评论 -
jvm学习笔记总结
为什么要深入学习jvm?从事java开发有几年的时间了,以前对jvm了解不够深入。项目中遇到一些问题,深刻体会到不是代码层级可以解决的。很多问题难以解决之处在于你发现不了问题源头。例如服务器的tps上不去,瓶颈在哪里?程序内存溢出,什么原因造成的?如何监控程序运行的状况?为此,特意抽出时间,系统学习了jvm的相关原理,希望更深刻得了解java运行的机制。总之,学习jvm,能让你站更高处看...原创 2011-11-22 00:06:38 · 159 阅读 · 0 评论 -
游戏服务器JVM性能调优
最近开始优化页游服务端的性能,一些心得总结一下。现在的服务器硬件越来越好,几十G内存,十几个CPU。当硬件不是瓶颈的时候,如果让程序发挥最大效用就成了我们需要考虑的问题。就游戏服务器来说,得满足几个要求,高负载,低延时。特别是在开服当天,大量用户会涌进来,可能给服务器造成压力。使用Java作为服务器语言,除了程序本身的性能外,JVM的配置也直接影响到系统性能。 参数调优 入门...2013-07-06 15:15:55 · 236 阅读 · 0 评论