pomelo伺服器集群中整合http伺服器

2021-09-19 05:18:22 字數 1397 閱讀 7230

專案接近尾聲,這個周在弄運維相關的一些東西。

運維部門需要乙個http伺服器,來查詢伺服器及玩家的一些資料。

在做的過程中考慮的是兩個問題:

1 這個http伺服器掛在什麼地方?

為了不汙染pemelo的**,做了乙個httpserver的元件,在gate伺服器中載入。

因為其他伺服器可能有多個,這樣會重複載入httpserver元件,導致埠重複監聽。

2 多個area伺服器,如何確定rpc呼叫的路由?

pomelo預設的路由格則如下:

// game-server/node_modules/pomelo/lib/components/proxy.js

var genroutefun = function()   var uid = session ? (session.uid || '') : '';  var index = math.abs(crc.crc32(uid.tostring())) % list.length;  utils.invokecallback(cb, null, list[index].id);};

從**中可以看到,若沒有設定路由規則就呼叫預設的路由規則。

預設路由規則中,uid決定了所在的伺服器。

所以最終**demo這樣的:

參考:           

專案接近尾聲,這個周在弄運維相關的一些東西。

運維部門需要乙個http伺服器,來查詢伺服器及玩家的一些資料。

在做的過程中考慮的是兩個問題:

1 這個http伺服器掛在什麼地方?

為了不汙染pemelo的**,做了乙個httpserver的元件,在gate伺服器中載入。

因為其他伺服器可能有多個,這樣會重複載入httpserver元件,導致埠重複監聽。

2 多個area伺服器,如何確定rpc呼叫的路由?

pomelo預設的路由格則如下:

// game-server/node_modules/pomelo/lib/components/proxy.js

var genroutefun = function()   var uid = session ? (session.uid || '') : '';  var index = math.abs(crc.crc32(uid.tostring())) % list.length;  utils.invokecallback(cb, null, list[index].id);};

從**中可以看到,若沒有設定路由規則就呼叫預設的路由規則。

預設路由規則中,uid決定了所在的伺服器。

所以最終**demo這樣的:

參考:           

pomelo伺服器集群中整合http伺服器

專案接近尾聲,這個周在弄運維相關的一些東西。運維部門需要乙個http伺服器,來查詢伺服器及玩家的一些資料。在做的過程中考慮的是兩個問題 1 這個http伺服器掛在什麼地方?為了不汙染pemelo的 做了乙個httpserver的元件,在gate伺服器中載入。因為其他伺服器可能有多個,這樣會重複載入h...

集群伺服器

集群,英文名稱為cluster,通俗地說,集群是這樣一種技術 它將多個系統連線到一起,使多台伺服器能夠像一台機器那樣工作或者看起來好像一台機器。採用集群系統通常是為了提高系統的穩定性和網路中心的資料處理能力及服務能力。舉個例子來說,我們架設了一台www伺服器,上面構建了乙個電子商務 然而隨著時間的推...

用VSCode遠端除錯Pomelo伺服器子程序

pomelo是網易開源的輕量級遊戲伺服器框架。是基於node.js的多程序非同步伺服器框架。非重度遊戲,完全可以用它來實現遊戲伺服器。由於pomelo實現的是多程序的,這樣就不能使用vscode在windows下面,直接除錯。只有遠端除錯了。首先是配置config servers.json,在要設定...