pomelo據說很靈活,我們就來看看它的大致原理。
先來看一下單個伺服器配置。
"connector": [
],"chat":[
]
乙個前台連線服務,乙個後天chat服務,看上去非常簡單。
客戶端在進行連線的時候會連線前台服務。看以下**,客戶端連線的是3010埠。
var pomelo = window.pomelo;
var host = "115.28.53.90";
var port = "3010";
function onlogin() , function() , function(data) );
});
客戶端是無法直接連線後台服務的,客戶端永遠只能連線前台服務。當前臺服務收到乙個來自客戶端的請求的時候,前台服務可以和後台服務進行通訊,讓後台服務來處理請求。
通常我們可以在前台服務裡面看到類似的**:
console.log('users' + users);
next(null, );});
這個**意思就是說呼叫後台服務來處理請求。前台服務和後台服務是不同的程序,所以這裡涉及到程序間通訊。pomelo的rpc目前是使用socket.io的,這個是網易的說明文件說的。
基礎上可以用這個圖來描述:
前台服務收到請求的時候,通過rpc**給後台處理。後台服務處理完之後,通過rpc把結果發給前台服務,然後前台服務就可以通知客戶端。客戶端和前台服務直接維持的是長連線。
參考:
pomelo學習記錄
剛進了乙個手機遊戲的公司,但是之前從來沒接觸過任何這方面的事物,什麼nodejs,mongodb,pomelo聽都沒聽過,所以幾乎是從零學起,開幾個貼記錄一下自己的一點學習心得,想到什麼就寫什麼了,順序可能比較混亂 所有指令都是在cmd下執行的 指令 cd c repos gameserver 1 ...
pomelo 學習零碎記錄 2
session物件包括 socketid 累加而來 frontendid,socket siosocket sessionservice 客戶端伺服器互相通訊的msg結構 上行 id,route,body 下行 id,body 每次傳送和接收前需要分別編碼和解碼 客戶端請求的處理 game serv...
Pomelo學習筆記(一)
這兩天希望在月底之前搞出個小遊戲來,打算做個配對實時對戰的功能。這是我第一次接觸正式的遊戲伺服器程式設計,肯定會遇到很多我沒考慮過的特性,實時互動 丟包率 處理 多程序計算等等。姑且記錄下來吧。pomelo是基於js開發的遊戲伺服器框架,模組化做得比較好,開發小型手遊效果應該是不錯的。並且自稱適用性...