jvm
树上的疯子^
树上有一个疯子,一天疯子看见一个傻子站在井边一直喊:13…13…13…… 疯子就下来问傻子:傻子,你在喊什么啊? 傻子看了眼疯子,没理他,继续喊:13…13…13…… 疯子就很好奇,把头伸到井边去看! 傻子一抬脚,“扑通”,疯子掉进了井里! 傻子嘿嘿一笑,说:“14…14…14……”!
展开
-
JVM调优总结 + jstat 分析
jstat -gccause pid 1 每格1毫秒输出结果jstat -gccause pid 2000 每格2秒输出结果不断的在屏幕打印出结果S0S1EOPYGCYGCTFGCFGCTGCTLGCCGCC ...转载 2016-10-14 17:14:38 · 4012 阅读 · 0 评论 -
Java垃圾回收机制算法
Java语言的一大特点就是可以进行自动垃圾回收处理,而无需开发人员过于关注系统资源的释放情况,垃圾回收机制要处理的基本问题有3个,1、哪些对象需要回收,2、何时回收这些对象,3、如何回收这些对象。下面是几种常见的垃圾回收算法及其核心思想:1、引用计数发:这是最古老也是最经典的垃圾收集方法,其算法很简单,对于一个对象A,只要任何一个对象引用了A,则A的引用计数器就加1,当引用失效时,引用计...转载 2015-12-28 19:46:50 · 684 阅读 · 0 评论 -
如何调优JVM - 优化Java虚拟机(大全+实例)
如何调优JVM-优化Java虚拟机(大全+实例)堆设置-Xmx3550m:设置JVM最大堆内存为3550M。-Xms3550m:设置JVM初始堆内存为3550M。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。-Xss128k:设置每个线程的栈大小。JDK5.0以后每个线程栈大小为1M,之前每个线程栈大小为256K。应当根据应用的线程...原创 2015-04-28 01:47:23 · 454 阅读 · 0 评论 -
java虚拟机参数
在Java、J2EE大型应用中,JVM非标准参数的配置直接关系到整个系统的性能。JVM非标准参数指的是JVM底层的一些配置参数,这些参数在一般开发中默认即可,不需要任何配置。但是在生产环境中,为了提高性能,往往需要调整这些参数,以求系统达到最佳新能。另外这些参数的配置也是影响系统稳定性的一个重要因素,相信大多数Java开发人员都见过“OutOfMemory”类型的错误。呵呵,这其中很可能就...原创 2017-07-12 13:41:53 · 271 阅读 · 0 评论 -
Java垃圾回收机制
综合了若干人的blog~1. 垃圾回收的意义 在C++中,对象所占的内存在程序结束运行之前一直被占用,在明确释放之前不能分配给其它对象;而在Java中,当没有对象引用指向原先分配给某个对象的内存时,该内存便成为垃圾。JVM的一个系统级线程会自动释放该内存块。垃圾回收意味着程序不再需要的对象是"无用信息",这些信息将被丢弃。当一个对象不再被引用的时候,内存回收它占领的空间,以便空间被后来的新...转载 2015-12-28 19:48:20 · 241 阅读 · 0 评论 -
Java GC、新生代、老年代
堆内存Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在 Java 中,堆被划分成两个不同的区域:新生代 ( Young )、老年代 ( Old )。新生代 ( Young ) 又被划分为三个区...原创 2019-03-29 14:28:00 · 721 阅读 · 0 评论 -
GC学习
基本回收算法1. 引用计数(Reference Counting)比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。2. 标记-清除(...原创 2019-03-29 14:31:59 · 178 阅读 · 0 评论