生产服务内存高问题
问题描述#
•1、“计算中心” 服务堆内存分配4g,在生产环境运行一段时间后,实际占用内存4.8G,业务运行正常,未出现OOM。(本文以此服务进行排查)
•2、生产环境的老项目,均出现运行一段时间后,内存被占满但未OOM的情况。部分实例因内存占用过高导致被系统kill,一般需要通过增加机器、实例进行解决(资源浪费)。
造成的影响#
•1、服务器物理内存15g,部署了三个服务。如实际占用内存都超过4.8g,导致服务器物理内存不够用,出现告警而将占用内存最大进程kill掉,影响生产服务的可用性,后果十分严重。
•2、如服务申请的内存超出了JVM能提供的内存大小(内存泄漏),将会导致java堆内存溢出,从而发生full gc,导致服务响应大幅度变慢,卡机等状态。
•3、在公司大促等场景的情况下,内存占用很高的服务会带来很大风险,通常需提前联系运维同事对“计算中心”进行重启,增加了开发及运维同事维护的工作量。
排查过程
代码#
(1)根据cat监控,获取“计算中心”中的热点方法,进行REVIEW,修正了部分可能会导致内存泄露的方法。并进行了观察。
(2)通过VisualVM监控,定位到部分耗时较久的操作DB热点方法,通过增加索引等方式,把查询性能控制在毫秒级。
(3)dump“计算中心”的内存镜像,通过MAT等工具观察各个对象在堆空间中所占用的内存大小、类实例数量、对象引用关系。
结论:通过以上三点,未解决和定位“计算中心”内存高问题。由此可以认为,
https://www.jianshu.com/p/1bfcfc3ba6d7
https://www.jianshu.com/p/8f8c6d7cb1a5
https://www.jianshu.com/p/ec2d17670291
https://www.jianshu.com/p/af36f1de39c4
https://www.jianshu.com/p/87034f73ea64
https://www.jianshu.com/p/be9ba5eae2ba
https://www.jianshu.com/p/7ff0d4ab9bbf
https://www.jianshu.com/p/d3865ff7f7b7
https://www.jianshu.com/p/f8222dd46311
https://www.jianshu.com/p/255bf975b1c2
https://www.jianshu.com/p/53ddfd1442dc
https://www.jianshu.com/p/f35097b03557
https://www.jianshu.com/p/ca898365c061
https://www.jianshu.com/p/f54a596d5200
https://www.jianshu.com/p/6f812126a186
https://www.jianshu.com/p/a029a5ff61f6
https://www.jianshu.com/p/1c16b9bd3254
https://www.jianshu.com/p/790006eaefdc
https://www.jianshu.com/p/f260097e86f2
https://www.jianshu.com/p/28888cac00d8
https://www.jianshu.com/p/e172679b86ce
https://www.jianshu.com/p/be28b328d15c
https://www.jianshu.com/p/bf07aecee059
https://www.jianshu.com/p/b2dc74d4be58
https://www.jianshu.com/p/16846c53ec6c
https://www.jianshu.com/p/288f200411eb
https://www.jianshu.com/p/ba79c990f03d
https://www.jianshu.com/p/a04155587c97
https://www.jianshu.com/p/62bf91bf9782
https://www.jianshu.com/p/2ef0753c9951
https://www.jianshu.com/p/978a4c5242fe
https://www.jianshu.com/p/158e967a88ad
https://www.jianshu.com/p/d52f596dd98f
https://www.jianshu.com/p/097d6a515d93
https://www.jianshu.com/p/439a2139ea92
https://www.jianshu.com/p/192299667ae4
https://www.jianshu.com/p/e9ea08f70959
https://www.jianshu.com/p/e5df3edb0ab3
https://www.jianshu.com/p/55e883309f6a
https://www.jianshu.com/p/eb703d87f65e
https://www.jianshu.com/p/ff54b37e8bef
https://www.jianshu.com/p/03f4d78f300a
https://www.jianshu.com/p/dc9f03e335c9
https://www.jianshu.com/p/d8b4df995d43
https://