在一些规模稍大的应用中,Java虚拟机(JVM)的内存设置尤为重要,想在项目中取得好的效率,GC(垃圾回收)的设置是第一步。PermGen space:全称是Permanent Generation space.就是说是永久保存的区域,用于存放Class和Meta信息,Class在被Load的时候被...
分类:
编程语言 时间:
2014-09-16 05:59:40
阅读次数:
210
在项目中发现full gc非常频繁。达到了每分钟13次。我怀疑可能会有内存泄露。于是在晚上找了内存泄露的资料。内存长期占用并导致系统不稳定一般有两种可能:1. 对象被大量创建而且被缓存,在旧的对象释放前又有大量新的对象被创建使得内存长期高位占用。表现为:内存不断被消耗、在高位时也很难回归到低位,有大...
分类:
Web程序 时间:
2014-09-15 19:25:39
阅读次数:
281
1、垃圾回收在conf/spark-env.sh中添加SPARK_JAVA_OPTS=-verberos:gc -XX;+PrintGCDetails -XX:+PrintGCTimeStamps如果发现集群耗费过多时间在垃圾回收上,可以通过spark.storage.memoryFaction调低...
分类:
其他好文 时间:
2014-09-12 11:35:43
阅读次数:
234
package com.gc.Stack;
/**
* java中stack的使用方法,堆栈是一种"后进先出"(LIFO)的数据结构,只能在一端进行插入(称为"压栈")或删除(称为"出栈")数据的操作.
* Java中,使用java.util.Stack类的构造方法创建对象
* public class Stack extends vector
* 构造方法:public Stack()创...
分类:
编程语言 时间:
2014-09-10 17:44:10
阅读次数:
240
在最近的工作中,通过JProfiler解决了一个内存泄漏的问题,现将检测的步骤和一些分析记录下来,已备今后遇到相似问题时可以作为参考。运行环境:Tomcat6,jdk6,JProfiler8内存泄漏的现象:1. 在服务器中执行某些批量操作的时候,发现内存只升不降;就算gc后,内存也不能被完全释放;2...
分类:
其他好文 时间:
2014-09-10 09:35:10
阅读次数:
253
以前写过类似的,这个应该比那个难些(x/gcd(x,y,z))*(y/gcd(x,y,z))*(z*gcd(x,y,z)=lcm(x,y,z)/gcd(x,y,z);对lcm(x,y,z)/gcd(x,y,z)唯一分解;对于每个pi^ai,x/gcd(x,y,z),y/gcd(x,y,z),z/gc...
分类:
其他好文 时间:
2014-09-09 12:01:38
阅读次数:
161
PerfView 概述:PerfView是一个可以帮助你分析CPU和内存问题的工具软件。它非常轻量级也不会入侵诊断的程序,在诊断过程中对诊断的程序影响甚微。Visual Studio自带的性能分析功能在CPU占用、时间消耗、内存分配等方面的诊断效果还算不错,但PerfView可以提供更加丰富的诊断分...
分类:
Web程序 时间:
2014-09-09 10:55:29
阅读次数:
492
基本回收算法 1. 引用计数(Reference Counting)比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。2. 标记-清除(Mark-Sweep)此算法执行分两阶段。第一阶段...
分类:
其他好文 时间:
2014-09-09 10:36:38
阅读次数:
205
每一种计算机语言都有自己的自动垃圾回收机制,让程序员不必过分关心程序内存分配,php也不例外,但是在面向对象编程(OOP)编程中,有些对象需要显式的销毁,防止程序执行内存溢出。一、PHP 垃圾回收机制(Garbage Collector 简称GC)永盈会娱乐城在PHP中,没有任何变量指向这个对象时,...
分类:
Web程序 时间:
2014-09-08 09:35:26
阅读次数:
277
先看一眼JVM虚拟机运行时的内存模型:
1.方法区 Perm(永久代、非堆)
2.虚拟机栈
3.本地方法栈 (Native方法)
4.堆
5.程序计数器
1 首先的问题是:jvm如何知道那些对象需要回收 ?
目前两种标识算法、三种回收算法、两种清除算法、三种收集器
引用计数法
每个对象上都有一个引用计数,对象每被引用一次,引...
分类:
其他好文 时间:
2014-09-07 21:13:05
阅读次数:
363