2012-03-24 193 views
3

我正在開發一個Web應用程序,對用戶數據執行迴歸分析。統計分析Rails應用程序的最佳託管

在後端

回報率被照顧應用邏輯,所有的統計分析完成由[R(因爲Ruby有差統計包)。

鑑於R和RoR都是單線程,並且該應用程序預計會由多個用戶同時使用 - 我需要您對最佳配置的建議。

例如:我應該在單獨的實例上運行R和RoR機器,並讓RoR通過REST與R通信?在可以聚集的同一臺機器上運行?使用革命分析?

什麼是一個很好的託管配置,以允許我的應用程序的可伸縮性?

回答

0

您可以創建一個代理傳達給多個Web服務器的Ruby客戶,反過來這些Web服務器的通過代理幾個R_servers通信。爲了讓代理服務器平衡負載,你可以看看Nginx的上游指令。

下圖顯示了3個Web服務器(它們是彼此的確切克隆)和3個R_服務器(它們是相互之間的確切克隆)。使用無論你需要多少,因爲它很容易添加/刪除Web服務器或R_服務器水平伸縮。

 webserver1   R_server1 
    /   \  /
proxy - webserver2 - proxy - R_server2 
     \   /  \ 
     webserver3   R_server3