路由:修复单个路由情况

This commit is contained in:
luying
2022-08-12 10:52:34 +08:00
parent 1313f0777f
commit aae53a9f49
4 changed files with 13 additions and 14 deletions

View File

@@ -160,13 +160,14 @@ export default class GameController extends Controller {
// select connector
let sum = connectors.reduce((pre, cur) => pre + (cur['num']||0), 0);
let res;
if(sum == 0) {
res = dispatch(userCode, connectors, 'connector');
} else {
if(sum > 0) {
let serversWithWeight = connectors.map(cur => ({...cur, weight: sum - (cur['num']||0)}));
let randResult = getRandEelmWithWeight(serversWithWeight);
res = randResult.dic;
}
if(!res) {
res = dispatch(userCode, connectors, 'connector');
}
let { id, serverType, clientHost, clientPort, num = 0 } = res;
await redisClient.hsetAsync(REDIS_KEY.SYS_SERVER, id, JSON.stringify({ serverType, clientHost, clientPort, id, num: num + 1 }));