Node.js 如何同时将文件转换为PDF?
我有一个Node.js 如何同时将文件转换为PDF?,node.js,libreoffice,pdf-conversion,Node.js,Libreoffice,Pdf Conversion,我有一个node.jsweb应用程序,我希望能够将许多文档(同时)转换为PDF。此时,我将libreoffice与队列一起使用(队列的目的是避免文件的无限转换-如果libreoffice无法在特定时间段内转换文件,则我将终止该进程)。问题是,如果我有两个用户上传文件,而他们都上传大文件,那么第二个用户必须等待第一个用户完成 有没有办法同时转换文件 我愿意用另一个PDF转换器替换libreoffice 先谢谢你 同时进行多个转换的一种方法是启动多个正在进行转换的进程。然后,每当向队列中添加某个内容
node.js
web应用程序,我希望能够将许多文档(同时)转换为PDF
。此时,我将libreoffice
与队列一起使用(队列的目的是避免文件的无限转换-如果libreoffice
无法在特定时间段内转换文件,则我将终止该进程)。问题是,如果我有两个用户上传文件,而他们都上传大文件,那么第二个用户必须等待第一个用户完成
有没有办法同时转换文件
我愿意用另一个PDF转换器替换libreoffice
先谢谢你 同时进行多个转换的一种方法是启动多个正在进行转换的进程。然后,每当向队列中添加某个内容时,就会将其传递给下一个处理转换的可用外部进程。由于文件转换可能是CPU和磁盘I/O的混合,因此您可以尝试使用要维护的最佳转换进程数
有许多方法可以管理队列。如果您的node.js应用程序正在维护队列,那么它将管理将项目从队列传递到外部进程的过程,并跟踪哪些外部进程是空闲的,并且可以进行新作业。如果队列位于所有外部进程都可以读取的数据库或文件系统中,然后外部进程自己可以观察队列。我认为问题出在
libreoffice
上,因为如果我打开两个终端,并在每个终端上运行一个文件转换命令,那么第二个终端将等待第一个终端完成转换,执行一个文件转换,我使用libreoffice命令--headless--使用node.js childProcess spawn
@roroinpho22将文件转换为pdf路径,然后您需要一个不同的转换器。@roroinpho21-建议您可以使用不同的配置文件启动LibreOffice,然后它将不会连接到当前运行的实例,您可以一次运行多个实例。另外,这里还有另一种方法:。谢谢,我将分析这些可能性。pandoc pandoc-o output.pdf-f docx input.docxI也必须转换.xlsx
文档。