优化 redis multi 使用

This commit is contained in:
liangtongchuan
2021-08-02 18:06:31 +08:00
parent 19430162f4
commit abb74b9e6b
3 changed files with 3 additions and 7 deletions

View File

@@ -201,7 +201,6 @@ export class EntryHandler {
let channelService = this.app.get('channelService');
let channel = channelService.getChannel(roleId, true);
channel.leave(roleId, sid);
// this.app.rpc.battle.battleRemote.kick.route(session)(roleId, this.app.get('serverId'), serverId);
this.app.rpc.chat.chatRemote.kickWorldChannel.route(session, true)(roleId, sid, serverId);
await leaveSysChannel(roleId, sid, serverId);
await leaveWorldChannel(roleId, sid, serverId);

View File

@@ -158,9 +158,7 @@ export async function setTeamSearchReq(roleId: string, sid: string, qualityArr:
cmds.push(['sadd', getComTeamKey(quality, lvRange), getComTeamValue(roleId, sid)]);
}
});
const multiClient = redisClient().multi(cmds) as Redis.Multi;
const newMulti = promisifyAll(multiClient) as Redis.Multi;
const res = await newMulti.execAsync();
const res = await redisClient().multi(cmds).execAsync();
console.log('setTeamSearchReq: ', res);
return res;
}
@@ -185,9 +183,7 @@ export async function rmRoleFromQueue(roleId: string, sid: string, qualityArr: A
}
}
};
const multiClient = redisClient().multi(cmds) as Redis.Multi;
const newMulti = promisifyAll(multiClient) as Redis.Multi;
await newMulti.execAsync();
await redisClient().multi(cmds).execAsync();
}
/**

View File

@@ -87,6 +87,7 @@ export function connectRedis(redisArr: string, redisPw: string) {
// 转 promise
const client = promisifyAll(oldRedisClient) as Redis.RedisClient;
promisifyAll(Redis.Multi.prototype);
client.set('hello', 'redis', Redis.print);
return client;