0

我有一个应用程序:

  1. 有一个始终运行的进程,它连接到 Twitter 的 Streaming API,它不断地接受数据、操作数据并保存到数据库
  2. 还有一个服务页面的 Web 服务,也使用 db

现在我的问题是,在这种情况下如何有效地使用 heroku?

我的理解是:

  1. 使用工作人员测功机来执行您的后台作业
  2. 不要使用调度程序来运行长时间运行的作业
  3. 如果我有一个 web dyno 提供我的页面和 worker dyno 来执行我的工作,我仍然可以在 1 个应用程序中拥有一切

永远运行的进程是否被视为“后台作业”?它并不真正属于队列,因为它应该始终运行。我在这里想念什么?在heroku上解决这个问题的最佳方法是什么?

4

1 回答 1

2

您将需要使用事件服务器thin来处理流式传输。这是一个指南

使用带有 Web 应用程序的 Twitter 流 API 提取推文可能是一个挑战。Heroku 的 Adam Wiggins 讨论了一种使用 EventMachine 使用 API 的方法。另一篇文章描述了使用这种方法与薄和 sinatra。我决定更进一步,创建了一个演示应用程序,您可以将它部署在 Heroku 上并使用 MongoDB 进行快速高效的存储。

查看更多信息:http: //joslynesser.com/blog/archives/2010/09/12/sumption-the-twitter-streaming-api-with-heroku-and-mongodb/

于 2013-04-27T21:04:18.747 回答