这个是截取的挂掉之后的Jstat -gccuase 的输出
[quote=引用 14 楼 KingCat666 的回复:] [quote=引用 13 楼 trocp 的回复:] FTP接收数据应该是边收边写入文件,全部存在内存的话,很容易秒爆
[quote=引用 4 楼 trocp 的回复:] 导致JVM Eden Space为100%,说明堆内存对象操作很多很快。 只要不出现tomcat:java.lang.OutOfMemoryError: PermGen space的异常,说明堆内存还是够用的。 主要看看Perm(永久代)的利用率,如果把你5G都用完了,我只能说很有可能程序有问题。 产生hs_error文件,可以根据日志内容来分析。不过这些hs_error文件很有可能是看门狗杀死java进程后留下的。
导致JVM Eden Space为100%,说明堆内存对象操作很多很快。 只要不出现tomcat:java.lang.OutOfMemoryError: PermGen space的异常,说明堆内存还是够用的。 主要看看Perm(永久代)的利用率,如果把你5G都用完了,我只能说很有可能程序有问题。 产生hs_error文件,可以根据日志内容来分析。不过这些hs_error文件很有可能是看门狗杀死java进程后留下的。
[quote=引用 13 楼 trocp 的回复:] FTP接收数据应该是边收边写入文件,全部存在内存的话,很容易秒爆
哎,数据不在本机,拿不出来,只能远程看看 现在想解决的是如果是FTP接收数据量太大,怎么能让Eden不要激增到100%
FTP接收数据应该是边收边写入文件,全部存在内存的话,很容易秒爆
[quote=引用 6 楼 KingCat666 的回复:] [quote=引用 4 楼 trocp 的回复:] 导致JVM Eden Space为100%,说明堆内存对象操作很多很快。 只要不出现tomcat:java.lang.OutOfMemoryError: PermGen space的异常,说明堆内存还是够用的。 主要看看Perm(永久代)的利用率,如果把你5G都用完了,我只能说很有可能程序有问题。 产生hs_error文件,可以根据日志内容来分析。不过这些hs_error文件很有可能是看门狗杀死java进程后留下的。
[quote=引用 5 楼 KingCat666 的回复:] 虽然设置-Xmn为5G,但程序卡死的是我用jmap和jstat都查看了内存 Jmap:显示年轻为160M,而且为100% Jstat:每秒查看GCUtil 可以看到Eden一下子从11% 升到100%,此后就卡死了,S0 S1 E O YGC FGC都不再变化 很奇怪为什么Eden为什么一秒就升到了100%,不知道是因为那会数据量太大还是程序有问题 如果是数据量太大,有没有什么方法可以从代码层面去避免,大家有什么想法
虽然设置-Xmn为5G,但程序卡死的是我用jmap和jstat都查看了内存 Jmap:显示年轻为160M,而且为100% Jstat:每秒查看GCUtil 可以看到Eden一下子从11% 升到100%,此后就卡死了,S0 S1 E O YGC FGC都不再变化 很奇怪为什么Eden为什么一秒就升到了100%,不知道是因为那会数据量太大还是程序有问题 如果是数据量太大,有没有什么方法可以从代码层面去避免,大家有什么想法
62,614
社区成员
307,326
社区内容
加载中
试试用AI创作助手写篇文章吧