08 2016 档案
摘要:1、执行死锁程序 2、执行 jstack -l 21733 | more 结果如下: 死锁程序: public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("start
阅读全文
摘要:1、对于synchronized方法和synchronized块,一个线程访问时,其他线程可以访问此类的非synchronized方法或块,不能访问其他带synchronized的方法或块。 举例如下: synchronized块: public class Thread2 { public voi
阅读全文
摘要:jstack可以定位到线程堆栈,根据堆栈信息我们可以定位到具体代码,所以它在JVM性能调优中使用得非常多。下面我们来一个实例找出某个Java进程中最耗费CPU的Java线程并定位堆栈信息,用到的命令有ps、top、printf、jstack、grep。 第一步先找出Java进程ID,服务器上的Jav
阅读全文
摘要:1.基本用法 awk '{pattern + action}' {filenames} pattern 表示 AWK 在数据中查找的内容 action 是在找到匹配内容时所执行的一系列命令。 pattern就是要表示的正则表达式,用斜杠括起来。 2.调用 命令行方式 awk [-F field-se
阅读全文
摘要:命令:jps、jstat、jmap、jhat、jstack 简介:(1) jmap -dump:format=b,file=eclipse.bin 10481 生成堆转储快照eclipse.bin (2) jmap -heap 10481 打印堆空间的概要 (3)jstack -l 10481 查看
阅读全文
摘要:1、标记-清除 2、标记-复制 3、标记-整理 4、分代混合算法
阅读全文
摘要:1、java堆中各代分布 (1)Young:主要是用来存放新生的对象。 (2)Old:主要存放应用程序中生命周期长的内存对象。 (3)Permanent:是指内存的永久保存区域,主要存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域. 它和和存放Ins
阅读全文
摘要:雪崩效应 1 服务雪崩的原因 (1)某几个机器故障:例如机器的硬驱动引起的错误,或者一些特定的机器上出现一些的bug(如,内存中断或者死锁)。 (2)服务器负载发生变化:某些时候服务会因为用户行为造成请求无法及时处理从而导致雪崩,例如阿里的双十一活动,若没有提前增加机器预估流量则会造服务器压力会骤然
阅读全文