jvm
tlk20071
这个作者很懒,什么都没留下…
展开
-
OOM排除
前段时间系统经常出现OOM,每次出现之后系统会出现各种问题,临时解决方案只能是重启,然后等找到问题后再发布解决。 线上问题日志如下: 1 Exception in thread "msgWorkTP-811568603-1-thread-6" java.lang.OutOfMemoryError: Java heap space转载 2016-04-16 15:54:27 · 658 阅读 · 0 评论 -
jstack 生成文件中的线程介绍(JVM 内部运行线程)
前段时间因为系统代码问题,造成性能瓶颈,于是就dump了一份stack出来进行分析。 stack 里面线程非常多,排查起来需要一定的经验,所以,对它们有一定了解,可以提高排查问题的效率。以下是从网上找的一些总结,有什么问题或者补充欢迎留言 线程 所属 说明 Attach Listener JVM Attach Liste原创 2017-07-27 16:21:34 · 753 阅读 · 0 评论 -
Java性能调优工具(一) Linux命令行工具(top sar vmstat iostat)
(1)top命令 第一部分 第一行:任务队列信息,等同于uptime命令 第二行:进程统计信息 第三行:CPU统计信息 us(用户空间CPU占用率)、sy(内核空间CPU占用率) 第四行:依次表示物理内存总量、已使用的物理内存、空闲物理内存、内核缓冲使用量 第五航:交换区总量、空闲交换区大小、缓冲交换区大小 第二部分原创 2017-07-28 15:43:17 · 510 阅读 · 0 评论 -
Java内存区域与内存溢出异常(jdk 6,7,8)
运行时数据区域 Java虚拟机在执行Java程序的过程中会把它关联的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(Java SE 7版)》的规定,Java虚拟机所管理的内存将会包括以下几个运行时的数据区域。如图所示: 1.1程原创 2017-09-04 21:09:58 · 4414 阅读 · 2 评论 -
Java GC算法以及垃圾收集器
概述 jvm中,程序计数器、虚拟机栈、本地方法栈随线程而生,随线程而灭;栈中的栈帧随着方法的进入和退出而有条不紊地进行着出栈和入栈操作。每一个栈帧中分配多少内存基本上是在类结构确定下来时就已知,方法结束或者线程结束时,内存就自然跟随真回收了。因此垃圾回收主要集中在Java堆和方法区,在程序运行期间,这部分内存的分配和使用都是动态的。 如何判断对象是否存活 引用计数算法:给对象添加一个引用计数原创 2017-09-11 15:38:27 · 389 阅读 · 0 评论