调试数据流作业的内存问题的最佳方法是什么?
我的工作因GC OOM错误而失败,但当我在本地对其进行分析时,我无法重现确切的方案和数据量。
我现在正在' n1-highmem-4'机器,我再也看不到错误了,但工作很慢,所以显然使用内存较多的机器不是解决办法:)
感谢您的任何建议, ģ
答案 0 :(得分:4)
请使用--dumpHeapOnOOM
和--saveHeapDumpsToGcsPath
选项(请参阅docs)。
这只会在你的一名工人实际上是OOM时有所帮助。此外,您可以尝试在worker上的线束进程上运行jmap -dump PID
,以便在运行时获取堆转储(如果它不是OOMing,但是如果您仍然观察到高内存使用量)。