我的服务器托管在Heroku上。我的应用程序的数据源是我的应用程序的外部。以下是获取数据的方法:
现在我的问题是,Heroku是否有可能启动这样的进程,这些进程需要持续运行,在外部服务器上监听套接字?
答案 0 :(得分:1)
Heroku中的进程只能侦听端口80上的HTTP流量。就像提到的那样,Node.js是在Heroku上运行这样的服务的最佳选择。
答案 1 :(得分:0)
我认为这可能是Node.js的一项工作,你可以在heroku上运行。逻辑流程是使用node.js应用程序连接到聚会服务器,然后当收到数据时,它将触发“回调”方法。然后,此方法可以使用数据将Web请求发回Rails服务器。
对于类似这样的示例,请检查pubnub node.js示例应用程序:
答案 2 :(得分:0)
如果我理解正确,你需要在连接到外部服务器的heroku上启动后台进程 - 这个过程然后在本地保存来自api的数据?
访问外部服务: 我知道Heroku不会限制对外部主机或端口的访问。实际上,我有一个应用程序连接到mongohq上的mongodb数据库。
漫长的运行过程:使用新的Celadon Cedar堆栈肯定可以实现。新的雪松堆使用了一个名为Procfile的概念,这使得任何脚本(例如ruby,bash,node.js)都可以作为一个进程运行。
保存数据:Heroku有一个只读文件系统(除了/ tmp),因此您需要将来自API的数据保存在数据库中(或类似的地方)。 / p>