jvm
冬子一定要努力
你可以菜,但不能不努力呀
展开
-
jvm案例和排查套路
YGC:经典排查案例:https://mp.weixin.qq.com/s/O0l-d928hr994OpSNw3oow1.收到超时告警,调用服务超时。查看服务监控耗时变长,从平时的几十毫秒完成变为百几毫秒。2.摘掉一个节点,通过命令dump了堆内存文件保留现场 jmap-dump:format=b,file=heap pid3.查看jvm参数配置 ps aux | grep "applicationName=adsearch" jmap-heap pid...原创 2020-07-15 12:52:00 · 267 阅读 · 0 评论 -
个人总结jvm垃圾回收器相关
Jvm垃圾回收目前就准备了这三篇博文进行整理,在写博文的过程中我也是边看边记载的,我觉得这种学习方式更容易让人记住,不会轻易忘记。以前的学习模式都是看PDF文档、看书等,但是有个缺点就是当时记住了过段时间就会忘记,因此想把学习过程中重要的部分做个笔记总结,以便于后期复习回顾(学习技巧仅个人观点)同时也希望lz的博客能帮助到广大园友一丢丢。在此立个Flag!以后我会坚持写博客的。哈哈--好了 接下来言归正传。知识回顾:第一篇《Jvm垃圾回收器(基础篇)》主要讲述了判断对象的生死?两种基础判断对象生死的原创 2020-08-07 09:42:28 · 129 阅读 · 0 评论 -
YGC问题排查,(来自大佬分享)
转自:https://mp.weixin.qq.com/s/O0l-d928hr994OpSNw3oow骆俊武IT人的职场进阶在高并发下,Java程序的GC问题属于很典型的一类问题,带来的影响往往会被进一步放大。不管是「GC频率过快」还是「GC耗时太长」,由于GC期间都存在Stop The World问题,因此很容易导致服务超时,引发性能问题。我们团队负责的广告系统承接了比较大的C端流量,平峰期间的请求量基本达到了上千QPS,过去也遇到了很多次GC相关的线上问题。5月份的这篇文章我介...原创 2020-07-15 10:31:36 · 888 阅读 · 0 评论 -
FGC问题排查(来自大佬分享)
线上服务的GC问题,是Java程序非常典型的一类问题,非常考验工程师排查问题的能力。同时,几乎是面试必考题,但是能真正答好此题的人并不多,要么原理没吃透,要么缺乏实战经验。过去半年时间里,我们的广告系统出现了多次和GC相关的线上问题,有Full GC过于频繁的,有Young GC耗时过长的,这些问题带来的影响是:GC过程中的程序卡顿,进一步导致服务超时从而影响到广告收入。这篇文章,我将以一个FGC频繁的线上案例作为引子,详细介绍下GC的排查过程,另外会结合GC的运行原理给出一份实践指南,希望对你有所原创 2020-07-15 10:30:19 · 1434 阅读 · 0 评论 -
Error occurred during initialization of VM等一些启动错误,都是参数配置问题
1.tomacat启动失败错误Error occurred during initialization of VMCould not reserve enough space for 2097152KB object heapDisconnected from server2.然后你修改时候一定要注意内存分配规律,不然很坑的!!!一定要了解每个值得含义:-vmargs -Xm...原创 2019-11-18 17:04:57 · 7250 阅读 · 0 评论 -
Stirng字符串在jvm中存放原理(必须知道的基础)
一。字符串对象在jvm存放的位置字符串常量池和堆内存1.使用常量字符串初始化的字符串对象,它的值存放在字符串常量池中;2.使用字符串构造方法创建的字符串对象,它的值存放在堆内存中;在1.7之前,字符串常量池是在PermGen区域,这个区域的大小是固定的,不能在运行时根据需要扩大,也不能被垃圾收集器回收,因此如果程序中有太多的字符串调用了intern方法的话,就可能造成OOM。在...原创 2019-06-13 13:38:19 · 711 阅读 · 0 评论 -
java之jvm一:运行时内存区域分析
1.1.7和1.8jvm运行时内存比较图:1.8后的图形:1.8和1.7相比:将原来的方法区放在直接内存中,优点就是堆中执行gc时不用去处理方法区中的常量,给gc节省时间。2.各个模块的分析2.1 程序计数器:实现代码的流程控制,顺序执行,异常处理。知道线程切换时该线程上次运行到哪了。唯一一个不会有OutOfMemoryError 的内存区域。生命周期随线程创建和线程...原创 2019-06-08 12:51:37 · 138 阅读 · 0 评论 -
jvm个人总结(面试使用)
https://mp.weixin.qq.com/s/iyk359KRwQiMjVrAnJMM8g一。jvm运行时数据区域 https://www.cnblogs.com/fubaizhaizhuren/p/4976839.html1.1.8之前1.8版本结构2.对于每个区域的解析:线程私有的:程序计数器:记录线程执行顺序,实现代码流程的控制。不存在内存溢出,随线程...原创 2019-06-11 22:36:28 · 145 阅读 · 0 评论 -
JVM运行原理及Stack和Heap的实现过程
一、JVM原理1、JVM简介:JVM是java的核心和基础,在java编译器和os平台之间的虚拟处理器。它是一种利用软件方法实现的抽象的计算机基于下层的操作系统和硬件平台,可以在上面执行java的字节码程序。java编译器只要面向JVM,生成JVM能理解的代码或字节码文件。Java源文件经编译成字节码程序,通过JVM将每一条指令翻译成不同平台机器码,通过特定平台运行。2.Java语...原创 2019-08-08 11:19:56 · 103 阅读 · 0 评论