我正在開發一個遊戲,我的後端是用NodeJS編寫的,我使用socket.io進行實時通信。與socket.io配對 - 依賴setInterval或套接字調用?
我的比賽的特點之一是配對。基本上,如果有兩個以上的玩家在比賽期間進行比賽,我的應用程序將爲他們創建一個遊戲室(特殊socket.io室)並開始遊戲。
有兩種方法可以做到這一點:
上創建一個的NodeJS setInterval的。在區間中,查看playersInMatchmaking數組。如果陣列中有兩名以上的玩家,則創建遊戲室。只要服務器在線,我就會循環。
而不是依靠setInterval的,每次檢查playersInMatchmaking陣列我收到到
socket.on("matchmaking start")
或socket.on("matchmaking stop")
是否有使用某些方法有什麼好處電話嗎? setInterval聽起來更容易,因爲我可以將匹配算法從套接字邏輯中分離出來,但是由於匹配算法會在循環中運行,而不是套接字事件,所以它的性能會降低。
您認爲如何?你有沒有更好的其他想法?