Node.js 在插入数据库之前,如何使用redis缓冲twitter流? 我在哪里
我有一个简单的node.js twitter流消费者,它跟踪各种hashtag。通常,这些都是趋势标签,这意味着大量的twitter json正在流入我的消费者。我不会在消费者中对twitter json进行任何处理 我想要什么 我想将tweet json对象存储在数据库中 假设 由于tweet的数量(以及所述数量的不可预测性),我应该避免在消费时将tweet json对象插入RejectDB(因为tweet进入消费者的速度可能比RejectDB写入这些tweet的速度快) 由于Redis绝对足够快,可以在使用tweet json对象时处理这些对象的写入,因此我可以将tweet json对象直接推送到Redis,并让另一个进程将这些tweet拉出并插入数据库 我希望学到什么Node.js 在插入数据库之前,如何使用redis缓冲twitter流? 我在哪里,node.js,twitter,redis,buffer,rethinkdb,Node.js,Twitter,Redis,Buffer,Rethinkdb,我有一个简单的node.js twitter流消费者,它跟踪各种hashtag。通常,这些都是趋势标签,这意味着大量的twitter json正在流入我的消费者。我不会在消费者中对twitter json进行任何处理 我想要什么 我想将tweet json对象存储在数据库中 假设 由于tweet的数量(以及所述数量的不可预测性),我应该避免在消费时将tweet json对象插入RejectDB(因为tweet进入消费者的速度可能比RejectDB写入这些tweet的速度快) 由于Redis绝对足
我们确实在生产中使用这种架构。如果您要处理的数据量没有超过redis的最大内存限制,您可以这样处理。此外,您还需要注意停机时间 使用redis作为推文缓冲区的最佳方式是什么? 您可以使用redis队列。你的制作人不断地往脑袋里推。 您的消费者从尾部消费并填充到您的db 您可以使用此解决方案,因为您有类似的需求(生产者很重,消费者需要比逐个弹出更快地消费)