每分钟线程加入打印内存
parent
f8a502b6b0
commit
3d6da1905c
|
@ -39,11 +39,15 @@ import com.ljsd.jieling.logic.store.BuyGoodsLogic;
|
||||||
import com.ljsd.jieling.logic.store.StoreLogic;
|
import com.ljsd.jieling.logic.store.StoreLogic;
|
||||||
import com.ljsd.jieling.network.server.ProtocolsManager;
|
import com.ljsd.jieling.network.server.ProtocolsManager;
|
||||||
import com.ljsd.jieling.util.MessageUtil;
|
import com.ljsd.jieling.util.MessageUtil;
|
||||||
|
import io.netty.util.internal.PlatformDependent;
|
||||||
import manager.STableManager;
|
import manager.STableManager;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.util.ReflectionUtils;
|
||||||
|
|
||||||
|
import java.lang.reflect.Field;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.concurrent.atomic.AtomicLong;
|
||||||
|
|
||||||
public class MinuteTask extends Thread {
|
public class MinuteTask extends Thread {
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(MinuteTask.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(MinuteTask.class);
|
||||||
|
@ -104,12 +108,12 @@ public class MinuteTask extends Thread {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
LOGGER.error("Exception::=>{}",e.toString());
|
LOGGER.error("Exception::=>{}",e.toString());
|
||||||
}
|
}
|
||||||
try {
|
// try {
|
||||||
fiveMinuteOnlineSend();
|
// fiveMinuteOnlineSend();
|
||||||
}catch (Exception e){
|
// }catch (Exception e){
|
||||||
e.printStackTrace();
|
// e.printStackTrace();
|
||||||
LOGGER.error("Exception::=>{}",e.toString());
|
// LOGGER.error("Exception::=>{}",e.toString());
|
||||||
}
|
// }
|
||||||
try {
|
try {
|
||||||
CheckFight.getInstance().luaHotFix();
|
CheckFight.getInstance().luaHotFix();
|
||||||
MongoUtil.getInstence().lastUpdate();
|
MongoUtil.getInstence().lastUpdate();
|
||||||
|
@ -150,29 +154,30 @@ public class MinuteTask extends Thread {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
directMemoryGet();//打印堆外内存
|
||||||
LOGGER.info("MinuteTask end...");
|
LOGGER.info("MinuteTask end...");
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("e",e);
|
LOGGER.error("e",e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void fiveMinuteOnlineSend() {
|
//弃用
|
||||||
Calendar calendar = Calendar.getInstance();
|
// private void fiveMinuteOnlineSend() {
|
||||||
int minute = calendar.get(Calendar.MINUTE);
|
// Calendar calendar = Calendar.getInstance();
|
||||||
if(minute%5 == 0){
|
// int minute = calendar.get(Calendar.MINUTE);
|
||||||
KTAppOnline ktAppOnline = new KTAppOnline();
|
// if(minute%5 == 0){
|
||||||
int onlineNum = OnlineUserManager.sessionMap.size();
|
// KTAppOnline ktAppOnline = new KTAppOnline();
|
||||||
ParamEventBean paramEventBean = new ParamEventBean(ParamEventBean.OnlineEvent);
|
// int onlineNum = OnlineUserManager.sessionMap.size();
|
||||||
int time =(int)(calendar.getTimeInMillis()/1000);
|
// ParamEventBean paramEventBean = new ParamEventBean(ParamEventBean.OnlineEvent);
|
||||||
paramEventBean.add(String.valueOf(time));
|
// int time =(int)(calendar.getTimeInMillis()/1000);
|
||||||
paramEventBean.add(String.valueOf(onlineNum));
|
// paramEventBean.add(String.valueOf(time));
|
||||||
ktAppOnline.setParam_event(paramEventBean);
|
// paramEventBean.add(String.valueOf(onlineNum));
|
||||||
ktAppOnline.setParam_data(KtBeanBuilderUtils.paramDataBuildForSystem());
|
// ktAppOnline.setParam_event(paramEventBean);
|
||||||
ktAppOnline.getParam_data().setCategory_s(LoginParamType.DATA_CATEGORY_APP);
|
// ktAppOnline.setParam_data(KtBeanBuilderUtils.paramDataBuildForSystem());
|
||||||
DataMessageUtils.addLogQueue(ktAppOnline);
|
// ktAppOnline.getParam_data().setCategory_s(LoginParamType.DATA_CATEGORY_APP);
|
||||||
}
|
// DataMessageUtils.addLogQueue(ktAppOnline);
|
||||||
}
|
// }
|
||||||
|
// }
|
||||||
//每分钟异步上报在线人数
|
//每分钟异步上报在线人数
|
||||||
private void reportUserOnline() {
|
private void reportUserOnline() {
|
||||||
new OnlineUserReportTask().start();
|
new OnlineUserReportTask().start();
|
||||||
|
@ -272,5 +277,16 @@ public class MinuteTask extends Thread {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void directMemoryGet(){
|
||||||
|
Field field = ReflectionUtils.findField(PlatformDependent.class,"DIRECT_MEMORY_COUNTER");
|
||||||
|
field.setAccessible(true);
|
||||||
|
try {
|
||||||
|
AtomicLong direct = (AtomicLong)field.get(PlatformDependent.class);
|
||||||
|
LOGGER.info("directMemoryGet 堆外大小=>{}", direct.get());
|
||||||
|
} catch (IllegalAccessException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue