【发布时间】:2011-10-27 13:22:20
【问题描述】:
我们遇到了关于 fop (v0.95) 在多次通话中的表现的问题。我们正在创建包含一些图像和我们自己的字体的 pdf。
第一个电话比其他电话要长得多,这对我们来说是个问题。以下是一些调用示例(时间以毫秒为单位):
- 调用 #1 - 经过的时间 = 13929
- 调用 #2 - 经过的时间 = 2817
- 调用 #3 - 经过的时间 = 3312
- 调用 #4 - 经过的时间 = 1629
- 调用 #5 - 经过的时间 = 1436
- 调用 #6 - 经过的时间 = 1356
- 呼叫 #7 - 经过的时间 = 911
- 调用 #8 - 经过的时间 = 1244
- 调用 #9 - 经过的时间 = 780
- 调用 #10 - 经过的时间 = 895
我们尝试了几种方法来解决这个问题:
- 使用目录参数加载我们的字体,或者加载 每种字体都带有字体标签
- 将 stric-configuration 设置为 true
- 将严格验证设置为 false
- 使用缓存文件(缓存文件标签)
在第一次调用时没有显着提高性能。我们目前唯一的解决方案是在构造函数中生成一个假的 pdf,这样第一次调用将在 jvm 启动时人工完成。
你有什么建议可以让表演更流畅,或者对这种行为有一些解释吗?
提前致谢。
【问题讨论】:
标签: java performance apache-fop