2011-11-19 43 views
1

我正在構建一個rails 3.1應用程序,需要在本地服務器上加載和處理數據負載(使用一堆非rails工具和寫入mysql),然後將優化後的結果輸入到heroku製作服務器(前端)。由於該流程的數據處理需要分批運行,因此我的第一個直覺就是使用類似「heroku db:push --tables data」的方式將結果表上傳到生產環境中 - 但問題在於它是sslloowww和該應用程序一次沒有數據約40分鐘。搗碎的批次需要每天運行約4次 - 所以看起來這種方法並不真正起作用。有關如何加速這個過程的任何建議,或者讓數據不那麼突兀地到達生產服務器的其他方案?謝謝!rails 3.1 - 將數據從本地數據處理服務器移動到heroku生產服務器

+0

需要上傳多少數據?這一切都必須立即執行,還是以更小的塊生成數據? – jdl

+0

嗨 - 總共約有100萬條記錄。數據需要分批計算,但不一定需要一次性上傳到heroku(它們可以滴灌) – user1051849

回答

1

聽起來像你可能不得不重新構建或在EC2上運行你的rails應用程序和拋棄Heroku?如果您的應用程序很簡單,或者您可以使用他們擁有的插件,我認爲Heroku非常棒。但是當它變得複雜時,我認爲它可能太複雜了。

Heroku明確表示您無法從外部訪問其數據庫。但是你可以做的是(如果你想留在Heroku上)就是使用另一個數據庫(比如RDS或者自己推出)並讓你的應用程序連接到它。然後直接將數據上傳到該數據庫。

相關問題