2 ld362093642 ld362093642 于 2014.09.23 11:31 提问

Java程序中Jsoup解析大量html内存溢出,资源没有回收,内存一直增长
Java程序中Jsoup解析大量html内存溢出,资源没有回收,内存一直增长

[code="java"]
最近要改别人写的一个解析html入库的程序,原本没有抽取正文的代码,就自己找了一个放了进去,是根据Jsoup解析写的,运行之后发现Jsoup解析大量html内存溢出,资源没有回收,内存一直增长。设1G的内存也就解析了几十万的页面就崩了。查了半天之后也没找到定位到,具体是哪个参数的内存一直增加也没有查出来,不知道怎么监视。现在是整个程序内存越跑越大,有几百万的页面,跑到几十万程序就崩了,内存1-2G,下面我会把程序和数据库上传一下。库表就3个(mysql).求懂的前辈给看看是哪里写的不对,有什么优化的方案。
[/code]

[code="java"]
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

这里是解析正文调用的,ArticleTextExtractor.extractContent里调用了Jsoup.parse(String)来解析。
String content = "";
Converter c = new Converter();
ArticleTextExtractor extractors = new ArticleTextExtractor();
JResult res = extractors.extractContent(c.streamToString( new FileInputStream(file)));
content = res.getText();
[/code]

[code="java"]
这边不能挂附件貌似,http://www.iteye.com/problems/103393 我在这边的提问上有
[/code]

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!