一、垃圾回收机制—GC Javascript具有自动垃圾回收机制(GC:Garbage Collecation),也就是说,执行环境会负责管理代码执行过程中使用的内存。 原理:垃圾收集器会定期(周期性)找出那些不在继续使用的变量,然后释放其内存。 JavaScript垃圾回收的机制很简单:找出不再使 ...
分类:
编程语言 时间:
2016-07-10 16:46:19
阅读次数:
224
本系列文章主要记录自己在学习《深入理解Java虚拟机-JVM高级特性与最佳实践》的知识点总结,文章内容都是基于周志明所著书籍的总结。 1.Java内存区域与溢出 2.垃圾收集器与内存分配策略 3.HotSpot算法实现 4.垃圾收集器 5.内存分配与回收策略 6.JVM调优总结:分代垃圾回收详述 ...
分类:
编程语言 时间:
2016-07-09 16:15:44
阅读次数:
126
垃圾收集器 前面的垃圾收集算法是理论,垃圾收集器则是具体的实现。下图是HotSpot里的收集器,中间的横线表示分代,有连线表示可以组合使用。虚拟机所处的区域表示它是属于新生代收集器还是老年代收集器。 Serial 收集器 是一个单线程的收集器,只能使用一个CPU或一条线程去完成垃圾收集;在进行垃圾收 ...
分类:
其他好文 时间:
2016-07-09 12:12:49
阅读次数:
245
上节学习回顾 1、判断对象存活算法:引用计数法和可行性分析算法 2、垃圾收集算法:标记-清除算法、复制算法、标记-整理算法 3、垃圾收集器: Serial:新生代收集器,采用复制算法,单线程。 ParNew:新生代收集器,采用复制算法,多线程。 Parallel Scavenge:新生代收集器,采用 ...
分类:
编程语言 时间:
2016-07-07 12:29:32
阅读次数:
276
https://github.com/elastic/beats-dashboards一、介绍filebeat貌似功能笔logstash更好,是下一代的日志收集器。topbeat定期收集系统信息如每个进程信息、负载、内存、磁盘等等,然后将数据发送到elasticsearch进行索引。packetbeat可以分析某个时间段mysql或者mongodb的慢查询..
分类:
其他好文 时间:
2016-07-06 18:37:49
阅读次数:
288
内存的动态分配与内存回收技术已经相当成熟,一切看起来都进入了“自动化”时代,那为什么我们还要去了解GC和内存分配呢?答案很简单:当需要排查各种内存溢出、内存泄漏问题时,当垃圾收集成为系统达到更高并发量的瓶颈时,我们就需要对这些“自动化”的技术实施必要的监控和调节。对象已死 堆中存放着Java所有的对 ...
分类:
其他好文 时间:
2016-07-02 17:26:26
阅读次数:
204
垃圾收集器 常用的四种垃圾收集器:Serial GC、Paralle收集器、Mostly-Concurrent收集器、Garbage-First收集器。 1.Serial GC 新生代采用复制收集算法,老年代中采用标记清楚压缩算法,它的minor GC和Full GC都是以Stop-The-Worl ...
分类:
其他好文 时间:
2016-07-01 18:04:09
阅读次数:
237
1.java的内存区域
线程共享
(1)堆:是java虚拟机所管理的内存中最大一块,用于存放对象实例,所有对象实例和数组都在堆上分配
基于垃圾收集器分为新生代和老年代,并可以进一步划分为Eden,survivor,默认比例为8:1 Eden、From survivor、To survivor三个部分
依据是否开启线程私有的分配缓冲区(TLAB)
也存在OutOfMemoryError异常...
分类:
编程语言 时间:
2016-06-30 12:54:34
阅读次数:
206
说起垃圾收集(Garbage Collection,GC),大部分人都把这项技术当做Java语言的伴生产物。事实上,GC的历史远比Java久远,1960年诞生于MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。当List还在胚胎时期时,人们就在思考GC需要完成的3件事情: 哪些内存需 ...
分类:
编程语言 时间:
2016-06-28 16:57:00
阅读次数:
196
1. 介绍 JVM提供了多种垃圾收集器,应该根据应用选择一种合适的垃圾收集器。 垃圾回收管理内存通过如下操作: 在年轻代分配对象,把年龄大的对象晋升到老年代。 当年老代超过阈值的时候,并发标记收集。 通过合并内存,拷贝内存的方式对内存进行整理,回收可以内存。 垃圾回收什么时候会产生问题?对于有些应用 ...
分类:
编程语言 时间:
2016-06-27 17:06:42
阅读次数:
262