miduo_server/matchserver/src/main/java/com/ljsd/MatchServerApplication.java

48 lines
2.1 KiB
Java
Raw Normal View History

package com.ljsd;
2019-09-09 16:07:11 +08:00
import com.google.gson.Gson;
2019-09-07 14:12:09 +08:00
import com.ljsd.jieling.config.CoreSettings;
2019-09-09 16:07:11 +08:00
import com.ljsd.jieling.config.ServerInfo;
import com.ljsd.jieling.redis.RedisKey;
import com.ljsd.jieling.redis.RedisUtil;
import com.ljsd.jieling.thrift.RPCServerTask;
import com.ljsd.jieling.thrift.pool.ThriftPoolUtils;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
@Configuration
@EnableAutoConfiguration
@ComponentScan
@EnableScheduling
public class MatchServerApplication {
2019-09-07 14:12:09 +08:00
public static int arenId = 0;
2019-09-09 16:07:11 +08:00
private static Gson gson = new Gson();
public static void main(String[] args) {
SpringApplication springApplication = new SpringApplication(MatchServerApplication.class);
springApplication.setRegisterShutdownHook(false);
springApplication.setWebEnvironment(false);
ConfigurableApplicationContext configurableApplicationContext = springApplication.run(args);
ThriftPoolUtils.getInstance().initContext(configurableApplicationContext);
RedisUtil.getInstence().init(configurableApplicationContext);
new RPCServerTask(configurableApplicationContext).start();
2019-09-07 14:12:09 +08:00
CoreSettings bean = configurableApplicationContext.getBean(CoreSettings.class);
arenId = bean.getArea();
2019-09-09 16:07:11 +08:00
register(configurableApplicationContext);
}
2019-09-09 16:07:11 +08:00
public static void register(ConfigurableApplicationContext configurableApplicationContext){
CoreSettings coreSettings = configurableApplicationContext.getBean(CoreSettings.class);
String ip = coreSettings.getIp();
int port = coreSettings.getPort();
int area = coreSettings.getArea();
String rpcUrl = ip + ":" + port;
RedisUtil.getInstence().sadd(RedisKey.MATCH_SERVER_INFO + ":" + area,gson.toJson(rpcUrl));
RedisUtil.getInstence().set( RedisKey.MATCH_SIZE + ":" + area,Integer.toString(1));
}
}