miduo_server/worldserver/src/main/java/com/WorldServerApplication.java

84 lines
2.4 KiB
Java

package com;
import com.ljsd.GameApplication;
import com.ljsd.jieling.util.KeyGenUtils;
import com.world.config.ConfigurableApplicationContextManager;
import com.world.config.WorldCoreSettings;
import com.world.db.mongo.MongoUtil;
import com.world.logic.arean.ArenaLogic;
import com.world.redis.RedisUtil;
import com.world.thread.ThreadManager;
import com.world.thrift.idl.pool.RPCServerTask;
import com.world.thrift.idl.pool.WorldRpcService;
import manager.STableManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
/**
* Description: 提供跨服玩法
* 不入库玩家数据
* 不对逻辑服做推送服务
* Author: zsx
* CreateDate: 2020/11/19 11:48
*/
@Configuration
@EnableAutoConfiguration
@ComponentScan
@EnableScheduling
public class WorldServerApplication {
private static final Logger LOGGER = LoggerFactory.getLogger(WorldServerApplication.class);
public static WorldCoreSettings bean;
public static void main(String[] args) throws Exception {
ConfigurableApplicationContextManager.init(args);
try {
MongoUtil.getInstence().init();
} catch (Exception e) {
LOGGER.info("MongoUtil err ->{}", e);
}
try {
RedisUtil.getInstence().init();
} catch (Exception e) {
LOGGER.info("MongoUtil err ->{}", e);
}
//线程池管理器
ThreadManager threadManager = ThreadManager.getInstance();
threadManager.init();
try {
STableManager.initialize("config");
} catch (Exception e) {
LOGGER.info("STableManager err ->{}", e);
}
KeyGenUtils.setMachineNum(0);
WorldRpcService.initHandler("com.world.handler", WorldServerApplication.class.getClassLoader());
new RPCServerTask().start();
//切换netty通信
// NetManager.getInstance().init();
try {
ArenaLogic.initRank();
}catch (Exception e){
LOGGER.info("ArenaLogic err ->{}", e);
}
bean = ConfigurableApplicationContextManager.getBean(WorldCoreSettings.class);
LOGGER.info("ServerProperties ->{}", bean.toString());
}
}