我们在AWS上运行的ubuntu服务器上发生了令人难以置信的jvm崩溃。
我们的JVM在抓取几个网页时崩溃。
崩溃发生在“安全点”cpp模块的第308行。 在gauranteeArmed == 0声明发生的阶段。
我们的系统pipe理员build议,在崩溃的时候,JVM创build了大量的线程。
我们没有在其他Linux或OSX盒子中重现这个错误。
我们使用Ning库来抓取一些网页。
相关文章
如何调查JVM崩溃的原因?
JBoss / HotSpot JVM崩溃
在每一篇文章中都观察到一个来自“无处”的“安全点”相关的崩溃。 最有趣的是,上面的第一个post实际上是在networking相关事件中出现JVM崩溃。
这个bug的神秘性使我相信有一个与线程创build和调度有关的bug,这个bug是我们当前版本的Ubuntu特有的,就java调用它的一些并发特性的方式来说,或者是一些底层的库不兼容性对我们特定的情况非常特别。
我的问题
我的主要问题是 – debugging涉及这些“安全点”的JVM堆栈跟踪的最佳方法是什么?从哪里可以开始了解如何处理这些错误? 还有其他一些问题,但我没有看到一个通用的答案。
其次,对于aws,java,networking以及Ubuntu在云中的行为方式的深入了解,在这里将会非常有用。
尝试使用最新的JVM(6u32或7u4),看看它是否仍然可重现。 如果你使用的是旧版本,至少有一个很好的机会,它已经被修复了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。