2016-07-30 64 views
1

我正在使用流星創建一個多人遊戲的財富遊戲輪。我對Meteor很新,我覺得我構建這個的方式太糟糕了......我的電腦開始聽起來像是爲升空做準備,然後我的服務器最終崩潰:發佈到所有連接的客戶端 - 流星服務器崩潰

我有我的服務器上運行一個計時器的代碼,它不斷地廣播/發佈給所有連接的客戶端。現在我已經設置好了,所以我的服務器正在對MongoDB文檔進行大量寫入(每51ms)。然後,我發佈了MongoDB文檔,讓所有的客戶端都訂閱它,以便他們都看到相同的計時器。

在我還使用流星內置的「observeChanges」檢查時,計時器命中0.00和客戶端我然後調用一個函數來轉動車輪。

所有這一切看起來像是一個荒謬的做法,它會殺死我的CPU。什麼是最好的建立一個能夠跨所有連接瀏覽器廣播/發佈相同數據的Meteor應用程序。

遊戲是這樣的......這裏面有下降到0.00 30秒計時器,然後調用一個函數旋轉命運之輪。

我錯過了什麼?

回答

1

你做這一切錯了,你不應該運行在服務器上的計時器不斷地改變蒙戈記錄,做定時器客戶端,只是給他們的啓動信號,或者以其他方式同步他們,但不使用數據庫並以這種方式出版,這樣做是一個可怕的想法。

我希望它有幫助。

+0

謝謝你的評論。你有沒有例子說明你會如何給他們一個啓動信號或同步他們? –

+0

我想,你可以用出版物作爲一個啓動信號,爲客戶提供數量有限的臨時解決方案。我沒有具體的解決方案,但我認爲那裏必須有更好的解決方案。所以繼續搜索,或者詢問更具體的問題。 –

+1

您應該檢查流星論壇過多,流星人都比較活躍在那裏。 –

相關問題