我正在准备一个小应用程序,它将通过socket.io聚合我的网站上的用户数据。我想每小时将所有数据插入到我的monogDB中。
最好的方法是什么?setInterval(60000)似乎有点无聊 :)
http://www.slideshare.net/pstokes2/social-analytics-with-mongodb
你可以让Mongo存储最后一次拷贝数据的时间,并且每当有请求到来时,你可以检查距离上次拷贝数据经过了多长时间。
或者你可以尝试使用setInterval(checkRestore, 60000)来进行每分钟一次的检查。checkRestore()函数会查询服务器,以判断最后更新的时间是否超过了一小时。有几种方法可以实现这个功能。
一个简单的方法是将日期存储为Date.now()的值(https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date),然后检查类似于db.logs.find({lastUpdate:{$lt:Date.now()-6000000}})的条件。
我可能混淆了几种不同的解决方案,但希望类似这样的方法能够起作用!