【发布时间】:2016-06-08 15:57:27
【问题描述】:
我是 SOA 新手,目前我们在使用 BPEL 进行一些 XML 转换时遇到了一个问题。 我们有 3 个 SOA 项目将执行以下操作:
- 从文件夹中读取文本格式的输入文件
- 将文件内容保存在数据库中并放入AQ
- 从 AQ 读取文件 ID,从数据库加载内容,并转换为我们内部的 XML 格式
- 应用一些业务逻辑并将内容转换回文本格式。
SOA proejct1 执行步骤 1-2,project2 执行步骤 3,project3 执行步骤 4。
我们正在对输入的 7000 个文件进行负载测试。
我们遇到的问题是“Old Generation”的内存使用不断累积,虽然major GC可以减少它,它仍然不断增长,直到100%。然后无法创建新的 BEPL 实例,我们遇到了事务超时。
分析堆转储后,我们得到如下结果,似乎 BPELFactoryImpl 持有一个超过 180M 的 HashMap,并且它会继续增长。那么有没有人经历过类似的事情?
我们使用 SOA 版本 12.1.3。这个问题让我们停了好几个星期,请帮忙,非常感谢。 Image of heap analysis
【问题讨论】:
标签: xml-parsing garbage-collection soa bpel