先决条件
您需要安装以下软件:
您可以从官方站点安装Node.js.
要在Ubuntu 18.04中安装Redis,请使用以下命令。
```
要在Mac中安装Redis,请阅读以下文章。
Redis入门,聊天应用程序
启动Redis
要在Windows 10上安装Redis,请访问
此Redis官方实验室安装指南并按照步骤操作
。
关于Kue
Kue
是一个运行在
Redis
之上的工作队列
。
我们可以使用队列将任务委派给多个worker,并节省处理时间。
使用队列系统完成高计算任务,例如视频渲染,文档生成,繁重的数学计算。
我正在使用
Kue
演示如何使用该软件以高效的方式设计和扩展系统。
创建节点项目
创建一个新文件夹并使用终端或命令提示符切换到该文件夹。
让我们安装依赖项。
我们需要kue和pdfkit依赖。
真棒。
让我们编写我们的应用程序。
我将创建两个命名
job.js
和
worker.js的
文件
。
在
Job.js中
,我将编写代码来读取文件或数据库并创建一个Kue作业。
在
Worker.js中
,我将编写代码来收听Kue主题并在请求到来时生成PDF文档。
为简单起见,这里有一些我将用于生成PDF文档的条目。
invoice.js
这是我们的
Job.js
代码。
在此代码中,我们正在读取存储有关PDF文档的信息的文件,对于每个条目,我们在队列中创建一个新作业。
这是我们的Worker.js代码。
在此代码中,我们正在听Kue主题即发票,并且在每个请求中,我们正在生成pdf文档。
PDF文档的标题应该是唯一的,因此我们使用索引字段来维护唯一的标题约定。
运行应用程序
要运行应用程序,请首先
使用以下命令
运行
job.js.
您应该在终端中看到类似的输出。
现在
使用以下命令
运行
worker.js
.
要验证作业是否已添加到队列,请访问
localhost:4000
以查看队列。
现在要检查PDF文件,打开发票文件夹,您应该看到新的PDF文件。
后续步骤
您可以使用MySQL,MongoDB等数据存储来获取实际数据并动态生成PDF。
您还可以使用Amazon S3存储PDF,而不是将其存储在服务器上。
结束语
我们已经学会了如何使用诸如
Kue之
类的Node和队列系统
来设计和构建系统来动态生成PDF文档。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69933200/viewspace-2650719/ ,如需转载,请注明出处,否则将追究法律责任。