
JVM
文章平均质量分 82
java干货仓库
公众号和名字一样,关注公众号每天都会推送一篇大厂面试题资讯
展开
-
每天100w次登录请求,4核8G的机器怎么做JVM调优
在4核8G的机器上,针对每天100万次登录请求(峰值50~100次/秒)的场景,JVM调优需平衡吞吐量、延迟和内存占用。建议堆内存设为4GB,新生代1.5GB,使用G1垃圾回收器,目标暂停时间200ms,并限制线程栈大小以减少内存占用。优化对象分配速率,调整Young区比例,监控Full GC频率,避免老年代溢出。使用工具如jstat、Grafana等监控JVM性能,确保Young GC频率≤5次/分钟,Full GC频率≤1次/天。特殊优化包括缩短Session超时、静态化密码加密实例、缓存验证码到Red原创 2025-04-21 18:12:52 · 894 阅读 · 0 评论 -
JVM 逃逸分析是什么?
对象未逃逸出方法。对象生命周期短且较小。JVM通过逃逸分析进行了优化。这种优化可以减少堆内存的使用和垃圾回收的开销,但具体行为取决于JVM的实现和运行时的优化策略。原创 2025-04-11 16:36:47 · 16 阅读 · 0 评论 -
JVM TLAB是干啥的?
TLAB 是 JVM 为优化多线程对象分配而设计的一种线程私有内存区域。几乎所有小对象(包括数组、集合元素、自定义对象等)都可能通过 TLAB 分配。TLAB 提高了对象分配的效率,减少了线程竞争,但大对象可能会直接分配在堆的全局区域。原创 2025-04-11 16:28:16 · 107 阅读 · 0 评论 -
Full GC 排查的方式有哪些?
Full GC(Full Garbage Collection) 是 Java 虚拟机(JVM)中的一种垃圾回收机制,它会清理整个堆内存(包括新生代和老年代),通常会导致应用程序暂停(Stop-The-World)。Full GC 的频繁发生会严重影响系统性能,因此需要及时排查和优化。以下是排查 Full GC 的常见方式:使用监控工具可以实时观察 JVM 的内存使用情况和 GC 行为。jstat:关键指标::Full GC 次数。:Full GC 总耗时。:GC 总耗时。jmap:原创 2025-03-19 10:01:20 · 727 阅读 · 0 评论 -
教你如何回答:什么是JMM?
JMM 是 Java 并发编程的基础,定义了多线程环境下线程如何与内存交互,以及如何保证可见性、有序性和原子性。主内存和工作内存:线程通过工作内存与主内存交互。三大特性:可见性、有序性和原子性。happens-before 规则:定义操作之间的先后顺序。实现机制:内存屏障和指令重排序。理解 JMM 有助于编写正确且高效的多线程程序,避免常见的并发问题(如数据竞争、死锁等)。原创 2025-03-18 18:00:48 · 701 阅读 · 0 评论