2011-04-18 59 views
2

人。我徘徊在Node.js框架中是否有任何服務器通信的高級API?例如,我有幾臺服務器,我的應用程序運行在這裏,我想控制這臺服務器的加載。有時,如果某個服務器超載,我想將一些連接請求重定向到另一個(更多免費的)。有什麼功能可以幫助我嗎?或者我必須實現我自己的功能?Node.js高級服務器的通信API

回答

2

嘗試尋找在cluster。這使您可以控制多個節點進程並很好地進行縮放。

或者只需設置TCP套接字並通過TCP傳遞消息或通過類似redis的數據庫傳遞消息。

您應該可以管理HTTP連接關閉流。您有一臺HTTP服務器作爲負載均衡器,並且該服務器只是將消息傳遞給其他服務器並將其傳回。

1

您正在尋找什麼叫做負載平衡器。現在有很多現成的解決方案,其中nginx是今天的標準之一(並且非常快速/易於設置)。

我不知道節點本地解決方案,但編寫它並不難。然而,通常情況下,負載平衡器並不實際監視服務器負載,它們監視服務器是否正在運行,並相對平均分配流量。

至於你的通信問題,沒有 - 沒有標準化的API來與Node.js服務器進行通信。但是,再次設置起來並不困難 - 假設您已經託管HTTP(使用Express或本機),只需監聽特定的請求,可能是/comm/或您認爲合適的任何內容,並且來回傳遞JSON。

0

不太清楚了,但是的NodeJS我聽說使用Capistrano與PPL的NodeJS