的XML时我米面临OOM问题在下面的代码出的内存解编骆驼DSL
from("file://" + getDumpDirLocation() + "?maxMessagesPerPoll=1&bufferSize=8192")
.unmarshal().string("UTF-8")
它获取的目录位置倾倒的xml文件是巨大的(有时1G)。
我也加入了自定义的处理器,试过 - 但没有成功,
from("file://" + getDumpDirLocation() + "?maxMessagesPerPoll=1&bufferSize=8192")
.process(this.getRemoveInvalidXmlCharacterProcessor())
有什么办法避免这种内存溢出异常?
所以基本上考虑到转储的XML文件的大小,处理器中的exchange.getIn()。getBody(String.class)会抛出OOM,因为对象结构是巨大的。
谢谢。
说使用-Xmx2048M,那么如果要处理的文件的大小超过2 GB,会发生什么情况。 – techuser