你如何在Heroku上运行实用程序服务?

Mat*_*ock 8 heroku jenkins graphite statsd

Heroku非常适合原型设计和运行简单的Web服务,我经常使用它来运行像Flask和Django这样的Python Web服务并尝试创意.但是,我总是很难理解如何使用infrastricture在堆栈中的每个启动需求中运行那些非常强大的支持或实用程序服务.4个服务的例外我不能没有,并会推荐给任何创业公司.

  • 詹金斯
  • Statsd
  • 石墨
  • Graylog

你会如何在Heroku上运行这些?最好只安装这些支持服务的专用盒(Rackspace等).

有没有人在Heroku上运行实用程序守护程序(服务)?

aar*_*nsw 19

有两个基本选项.首先是找到或创建一个Heroku插件来完成任务.例如,您可以使用许多托管日志记录解决方案而不是Graylog; 可以使用Rails on FireTravis代替Jenkins.如果不存在适当的插件,您只需在AWS EC2实例上运行该服务即可有效地创建自己的插件.

另一种方法是将服务推入12 因子应用程序,以便它也可以在Heroku上运行.例如,您可以存根whisper文件系统调用,以便它们存储在支持服务中.但这通常非常痛苦和脆弱,除非您可以让上游维护者接受您的更改.