0

我已经将 Node/Express 路由上的一个长时间运行的进程更改为使用 Bull/Redis。

我几乎在 Heroku docs 上复制了本教程

该教程的要点是:Express 路由安排作业,立即向客户端返回 200,并且浏览器长轮询作业状态(Express 上的 ping 路由)。当客户端获得completed状态时,它会在 UI 中显示它。这Worker是一个单独的文件,并使用附加的yarn run worker.js.

请注意它建议Throng用于集群工作人员的末尾。

我正在使用此 Bull Dashboard来监控作业/队列。此仪表板显示可用的工作人员及其状态(未运行时空闲/运行时未处于空闲状态)。

我已经让 MVP 工作了,但是操作非常慢。完成的平均时间是 1 分 30 秒。而之前(在添加 Bull 之前)只需几秒钟即可完成。

另一个奇怪的是,工人状态似乎至少需要 30 秒才能从Idle变为not Idle。似乎很多延迟都在等待工人。

由于新操作是一个单独的文件 (worker.js) 并且throng启用了集群,我期待这个操作非常快,但事实恰恰相反。

有没有人有这方面的经验?或帮助找出导致速度如此缓慢的原因的指针?

4

0 回答 0