前言:
 发现问题,解决问题,是贯穿整个项目开发过程的事情,能够处理更多的问题,随着经验的丰富,提前预知更多的问题,让问题不出现是最好的解决问题方式。
 问题背景:
 项目运行过程中出现了爬取加载慢,核心服务内存占用很高的情况。
 问题原因:
 以下为分析出来的原因:
 1.项目启动的时候分配的堆内存过小
 2.项目运行过程中有大量的对象被创建出来,可是没有及时被GC回收,或者具有引用的GC无法回收
 3.经过了GC之后,堆内的对象被清理,但是操作系统的内存没有被立刻释放
 查看jvm用的是哪种垃圾回收器:
 Windows+R > cmd > 输入命令 java -XX:+PrintCommandLineFlags -version
 
查看内存占用情况:
 首先启动当前的项目
 
 找到jdk的bin路径,找到jvisualvm.exe,双击打开
 
 在左侧本地选择对应的项目,双击进去
 
 点击红框内的监视
 
 点击图右上角的“堆Dump”
 
 查看到了内存占用情况
 
 双击对应的行,查看详细的信息,根据信息选择针对性的解决方案
 