gpt4 book ai didi

java - Apache FOP 和 Java 热启动选项(使用 Rhino 效果更好)

转载 作者:行者123 更新时间:2023-12-01 15:58:12 25 4
gpt4 key购买 nike

这是我需要做的:使用 Apache's FOP 渲染 PDF在服务器上(最好是 Windows)。作业将来自队列,但这并不是太重要。

我希望避免每次需要渲染作业时都预热 JVM。 FOP 有一个引用 servlet,我可以将其用于 Web 请求,但我不想介绍 Tomcat。

我有非常粗糙的 Java 技能(并且希望保持这种状态),所以,启动一个长时间运行的 Java 程序的最简单方法是什么,该程序可以监视队列并运行 FOP 作业,而无需启动开销比如说,命令行 Java 脚本会发生这种情况吗?我很乐意使用 Rhino 来完成此操作,因为我对 JS 很熟悉,并且已经在 Rhino/JS 中掌握了很多文档处理逻辑。我绝对不想使用 Java Web 服务器。

最佳答案

我认为你只有两个选择;

  1. Java“服务器”,无论是 Web 服务器还是 RPC 服务器。我们使用 thrift 与长期运行的 java 服务进行通信,该服务的唯一目的是生成 PDF。我们在启动时预加载 FOP,并为每个请求保持库“热”。网络服务也同样好。

  2. 一个java守护进程,它监听你提到的队列,生成PDF(也许把它放在tmp文件夹中?)并返回完成通知和另一个队列的位置(这实际上是我们的工作方式)生成超过 300 页的长期财务报告)。

您可以使用任何您想要的语言;如果 Rhino 可以直接与 Java/FOP 通信,那么就不会有问题。我们在 Java 之上的各种项目中使用了 Jython 和 Scala。

关于java - Apache FOP 和 Java 热启动选项(使用 Rhino 效果更好),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4607244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com