首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
jvm
订阅
robin爱学习57609
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
关于JVM堆外内存的一切
Java中的对象都是在JVM堆中分配的,其好处在于开发者不用关心对象的回收。但有利必有弊,堆内内存主要有两个缺点:1.GC是有成本的,堆中的对象数量越多,GC的开销也会越大。2.使用堆内内存进行文件、网络的IO时,JVM会使用堆外内存做一次额外的中转,也就是会多一次内存拷贝。 …
蚂蚁消息中间件 (MsgBroker) 在 YGC 优化上的探索
GC 一直是 Java 应用中被讨论得最多的话题之一,尤其对于消息中间件这样的基础应用,GC 停顿产生的延迟会严重影响其在线服务能力,是开发和运维人员关注的重点。 关于 GC 优化,首先最容易想到的就是调整那些影响 GC 性能的 JVM 参数(如新生代与老年代的大小、晋升到老年…
macOS上使用gperftools定位Java内存泄漏问题
这几天在排查一个堆外内存泄漏的问题时看到很多人都提到了gperftools这个神器,想要尝试一下结果发现它对macOS的支持不太友好。而且大多数教程是针对C++的,里面的一通编译链接的操作看得我个Java仔眼花缭乱的。所以我在这里整理一份mac和Java版的使用教程,免得大家再…
深入探索编译插桩技术(三、解密 JVM 字节码)
成为一名优秀的Android开发,需要一份完备的 知识体系,在这里,让我们一起成长为自己所想的那样~。 本篇是 《深入探索编译插桩技术》系列文章 的第三篇,相比前两篇文章来说,难度上升了不止一个档次,所以含金量比较高。并且,拥有扎实的 JVM 字节码基础能让我们更好地掌握 AS…
基础篇:详解JAVA对象实例化过程
类的加载机制:如果没有相应类的class,则加载class到方法区。对应着加载->验证->准备->解析-->初始化阶段 准备:为类变量分配内存并设置变量的初始值(默认值)。如果是final修饰的对象则是赋值声明值 初始化:执行类构造器<client>(注意不是对象构造…
工作10年后,再看String s = new String("xyz") 创建了几个对象?
这个问题相信每个学习java的同学都不陌生,作为一个经典的面试题,到现在工作这么多年了我真是认为挺操蛋的一个问题,在网上到现在你仍然可以看见很多讨论这个问题的人,其中不乏工作很多年的人都有争论,我认为还是有必要来说一说这个问题的。 常量池存在于方法区,而方法区在jdk1.7版本…
Java之CMS GC的7个阶段
CMS收集器的主要设计目标是:低应用停顿时间。它通过两种方式实现这一目标: 不压缩老年代,而是使用空闲列表来管理回收空间。 大部分标记清理工作与应用程序并发执行。 主要问题:由于不压缩带来的老年代堆碎片,或者在对象分配率高的情况下,都可能导致Full GC。 CMS收集器的GC…
关于GC原理和性能调优实践,看这一篇就够了!
本文介绍 GC 基础原理和理论,GC 调优方法思路和方法,基于 Hotspot jdk1.8,学习之后你将了解如何对生产系统出现的 GC 问题进行排查解决。 CMS 原理及调优。 1. GC 基础原理 1.1. GC 调优目标 比如,用户订单查询响应时间,对响应速度要求很高的系…
解密阿里线上问题诊断工具Arthas和jvm-sandbox
这篇文章是之前学习Arthas和jvm-sandbox的一些心得和总结,希望能帮助到大家。本文字较多,可以根据目录进行对应的阅读。 2018年已过,但是在过去的一年里面开源了很多优秀的项目,这里我要介绍两个比较相似的阿里开源项目一个是Arthas,另一个是jvm-sandbox…
Java之CMS GC Causes
Allocation Failure happens when there isn't enough free space to create new objects in Young generation. Allocation failures triggers Young…