跨服排行榜,代码调整,无逻辑修改

grimm 2024-05-11 17:28:18 +08:00
parent 4073fc2579
commit 61b39fe7c3
1 changed files with 29 additions and 29 deletions

View File

@ -40,35 +40,36 @@ public class CrossRankManager {
*/
public void crossRankHandle(){
// 时间验证
if (isTime()){
// 全部排行遍历
for (RankEnum value : RankEnum.values()) {
int type = value.getType();
//跨服
if(RankContext.isCrossRank2(type) && RankContext.isCrossRank(type)){
// 获取分组id是否跨服
int crossGroup = GlobleSystemLogic.getInstence().getCrossGroup();
if(crossGroup != -1){
AbstractRank rank = RankContext.getRankEnum(type);
// 获取跨服key
String key = RedisUtil.getInstence().getKeyNew(rank.getCrossRedisKey(),"");
// 清理旧榜数据
RedisUtil.getInstence().del(key);
// 获取本组的服务器列表
List<String> servers = GlobleSystemLogic.getInstence().getCrossServersByGroup();
for (String server : servers) {
String localKey = RedisUtil.getInstence().getKeyNew(server, rank.getRedisKey());
// 获取本地服排行榜数据
Set<ZSetOperations.TypedTuple<String>> range =
RedisUtil.getInstence().getZsetreverseRangeWithScores(localKey,"",0,100, false);
if (range == null || range.isEmpty()){
continue;
}
// 批量放入跨服排行榜
RedisUtil.getInstence().zsetAddAall(key,range);
if (!isTime()) {
return;
}
// 全部排行遍历
for (RankEnum value : RankEnum.values()) {
int type = value.getType();
//跨服
if(RankContext.isCrossRank2(type) && RankContext.isCrossRank(type)){
// 获取分组id是否跨服
int crossGroup = GlobleSystemLogic.getInstence().getCrossGroup();
if(crossGroup != -1){
AbstractRank rank = RankContext.getRankEnum(type);
// 获取跨服key
String key = RedisUtil.getInstence().getKeyNew(rank.getCrossRedisKey(),"");
// 清理旧榜数据
RedisUtil.getInstence().del(key);
// 获取本组的服务器列表
List<String> servers = GlobleSystemLogic.getInstence().getCrossServersByGroup();
for (String server : servers) {
String localKey = RedisUtil.getInstence().getKeyNew(server, rank.getRedisKey());
// 获取本地服排行榜数据
Set<ZSetOperations.TypedTuple<String>> range =
RedisUtil.getInstence().getZsetreverseRangeWithScores(localKey,"",0,100, false);
if (range == null || range.isEmpty()){
continue;
}
LOGGER.info("=====================跨服排行榜处理========,key:{}",key);
// 批量放入跨服排行榜
RedisUtil.getInstence().zsetAddAall(key,range);
}
LOGGER.info("=====================跨服排行榜处理========,key:{}",key);
}
}
}
@ -76,7 +77,6 @@ public class CrossRankManager {
/**
*
* @return
*/
private boolean isTime(){
int group = GlobleSystemLogic.getInstence().getCrossGroup();
@ -89,7 +89,7 @@ public class CrossRankManager {
return false;
}
String timeStamp2 = TimeUtils.getTimeStamp2(TimeUtils.now() + TimeUtils.HOUR * 2);
RedisUtil.getInstence().set(key,timeStamp2,TimeUtils.HOUR*2/1000);
RedisUtil.getInstence().set(key,timeStamp2,TimeUtils.HOUR * 2 / 1000);
return true;
}