我已经将一个在node/express路由上长时间运行的进程改为使用bull/redis。
我几乎复制了heroku文档的这个教程。
该教程的要点是:express路由调度作业,立即将200返回给客户机,浏览器长时间轮询作业状态(express上的ping路由)。当客户得到 completed
状态,它在ui中显示它。这个 Worker
是一个单独的文件,并使用附加的 yarn run worker.js
.
注意它建议使用 Throng
为了聚集你的员工。
我使用这个bull Jmeter 板来监视作业/队列。此 Jmeter 板显示可用的辅助进程及其状态(未运行时空闲/运行时未处于空闲状态)。
我已经让mvp工作了,但是操作非常慢。平均完成时间为1分30秒。而在添加bull之前,需要几秒钟才能完成。
另一个奇怪的现象是,一个工人的状态至少需要30秒才能改变 Idle
至 not Idle
. 似乎有很多延迟在等着工人。
因为新操作是一个单独的文件(worker.js)和 throng
如果启用了集群,我本来以为这个操作会非常快,但事实恰恰相反。
有人有过这样的经历吗?或者指针来帮助找出是什么导致了这一进程如此缓慢?
暂无答案!
目前还没有任何答案,快来回答吧!