的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