如何保存node.js的应用程序状态主要由HTTP请求组成的应用程序?在Node.js中保存应用程序状态
我在Node.JS中有一个脚本,它使用RESTful API将大量(10,000多种)产品导入到电子商务应用程序中。该API对可以提出的请求数量有限制,我们正盯着这个限制。在之前的运行中,脚本以Error: connect ETIMEDOUT
退出可能是由于超出了API限制。我希望能够尝试连接5次,如果在限制恢复一小时后恢复失败。
如果发生崩溃(电源故障,网络崩溃等),保存整个过程也是有益的。并且能够从停止的位置恢复脚本。我知道Node.js作为一个巨大的事件队列运行,所有的http请求和它们的回调都被放入该队列(以及一些其他事件)。这使其成为保存当前执行状态的主要目标。其他令人愉快的(对于这个项目来说不是完全必要的)将能够在不同网络上的多台机器之间分配工作以增加吞吐量。
那么现在有没有办法做到这一点?一个框架也许?或者我需要自己实现这一点,在这种情况下,如何做到这一点的任何有用的资源,将不胜感激。
你想要的是*持久性作业队列*。他们中有很多人;一个比较好看的是[Kue](http://learnboost.github.com/kue/)(在redis上构建)。 –
我认为你是对的。 Kue相当出色。所以基本上在生产者中,我将阅读我的数据文件,在消费者中,我可以添加/更新每个产品。所以每个产品都将是一项单独的工作。 –