我的服務器託管在Heroku上。我的應用程序的數據源是我的應用程序的外部數據源。以下是獲取數據的方法:連接到外部插座的Heroku上的進程
- 初始化連接到套接字@外部對象服務器的進程。
- 保存通過此套接字連接來的數據。
現在我的問題是,是否有可能在Heroku上啓動這樣的進程,它需要永久運行,在外部服務器上監聽套接字?
我的服務器託管在Heroku上。我的應用程序的數據源是我的應用程序的外部數據源。以下是獲取數據的方法:連接到外部插座的Heroku上的進程
現在我的問題是,是否有可能在Heroku上啓動這樣的進程,它需要永久運行,在外部服務器上監聽套接字?
我認爲這可能是您可以在heroku上運行的Node.js的一份工作。邏輯流程將通過node.js應用程序連接到派對服務器,然後在接收到數據時將觸發「回調」方法。然後,該方法可以使用數據將Web請求發送回Rails服務器。
對於像這樣的例子,檢出pubnub node.js的示例應用程序:
在Heroku的一個過程只能聽HTTP流量在端口80像安迪提到,Node.js的在Heroku上運行這樣的服務是你最好的選擇。
如果我正確理解你,你需要在連接到外部服務器的heroku上啓動一個後臺進程 - 這個過程然後從本地保存api中的數據?
訪問外部服務: 我知道Heroku並不限制對外部主機或端口的訪問。的確,我有一個應用程序連接到mongohq上的我的mongodb數據庫。
長時間運行過程:這當然可以使用新的Celadon Cedar堆棧。新的雪松堆棧使用了一個名爲Procfile的概念,它可以使任何腳本(例如ruby,bash,node.js)作爲一個進程運行。
保存數據:Heroku的具有隻讀文件系統(除/ tmp目錄),所以你需要保存從API來在數據庫(或類似的地方)中的數據。