在node.js中利用heroku

时间:2013-07-12 20:30:41

标签: javascript performance node.js heroku

我一直在寻找PaaS提供商一段时间,nodejitsu似乎很有希望,但没有提供我正在寻找的一些功能。我需要能够快速处理大量数据以满足我的许多要求。我已经开始使用node.js了,但是我想要做的是从数据库信息中删除任务来处理Web数据,处理一些统计信息(基本上是一个名册)。

基本上我正在搜索人们的社交媒体(Facebook,Twitter,tumblr等)以确定他们在我的网络服务上获得多少演示文稿,然后向观众提供他们的最新内容(图像和简短文本)。最后,这会为每个请求创建大量的操作,因为我需要比较许多不同艺术家的统计数据。

我的想象是这样的:

  1. 处理请求。服务模板。
  2. 启动网络抓取任务或任务(为每个社交媒体启动一项任务,或者只为所有社交媒体启动一项任务?)
  3. 启动任务以查询数据库。
  4. 处理任务输出。并响应ajax长轮询,或通过Web套接字来处理已处理的数据。重复,直到完成所有任务。
  5. 这是我希望在heroku上部署的结构,因此我可以使用处理动作来释放web dynos,这样用户就永远不会在黑暗中等待页面加载。在高流量时,一些用户可能不得不等待页面填充内容,但在大多数情况下,内容将在呈现页面后立即开始填充。如果不是那些只是打算立即导航到另一个页面的用户不会等待网站完成响应。

    所以基本上我的问题是如何利用工作人员dynos释放节点中的网络动态?或者有更好的方法吗?

    对不起任何邋,,这是我平板电脑上的类型。

1 个答案:

答案 0 :(得分:1)

是的,Heroku非常适合这类事情。见https://devcenter.heroku.com/articles/background-jobs-queueing

您认为缺少的组件是使用队列。 Resque咖啡可能是使用最广泛的,但Kue是全节点解决方案的绝佳选择。两者都运行在Redis之上。