我已经查看过使用camel处理大型csv文件的早期帖子。 在下面的代码中,我使用bindy来处理我的CSV文件。还使用流和标记器将文件进一步拆分为2000条记录组。
当我在生产环境中运行时,服务器仍然出现OOM错误,在处理同一文件时在开发机器中正常工作。
我错过了什么?
<split streaming="true">
<tokenize token="\n" group="2000"></tokenize>
<unmarshal ref="bindyDataformat">
<bindy type="Csv" classType="com.camel.bindy.input.ABC"/>
</unmarshal>
<bean ref="csvBean" method="processAbcCsv"/>
<marshal ref="bindyDataformat">
<bindy type="Csv" classType="com.camel.bindy.input.ABC"/>
</marshal>
<to uri="{{to.file.processed}}"/>
</split>