diff --git a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/executor/D331RtcmMessageExecutor.java b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/executor/D331RtcmMessageExecutor.java index 99379af0..e4ab58d9 100644 --- a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/executor/D331RtcmMessageExecutor.java +++ b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/executor/D331RtcmMessageExecutor.java @@ -41,14 +41,14 @@ public class D331RtcmMessageExecutor implements Executor // 补齐tenantId Device device1 = deviceService.findByDeviceId(id); if(device1 == null || device1.getOpMode() == GnssDevice.OP_MODE_UNUSE) return null; - if (logger.isDebugEnabled()) { - logger.debug("receive d331 rtcm message of device: "+message.getId()+", seq:"+message.getSeq()+", len:"+message.getLen()); - } + logger.debug("receive d331 rtcm message of device: "+message.getId()+", seq:"+message.getSeq()+", len:"+message.getLen()); + // 推送基站数据 if(device1.getOpMode() == GnssDevice.OP_MODE_USE) { byte[] forwardBytes = message.getSrcData(); // 要求快速转发,因此用缓存,不要每次都查数据库 List deviceList = deviceService.findByParentId(id); + logger.debug("base station {} has {} rovers: "+message.getId(),deviceList.size()); for (Device device : deviceList) { if (device.getOpMode() != GnssDevice.OP_MODE_USE) continue; String deviceId = device.getDeviceId(); diff --git a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/sal/LocalDeviceServiceImpl.java b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/sal/LocalDeviceServiceImpl.java index f80e8e5d..88dd42de 100644 --- a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/sal/LocalDeviceServiceImpl.java +++ b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/sal/LocalDeviceServiceImpl.java @@ -2,6 +2,8 @@ package com.imdroid.sideslope.sal; import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import javax.annotation.Resource; @@ -14,13 +16,15 @@ import java.util.concurrent.TimeUnit; */ @Component(value = "local") public class LocalDeviceServiceImpl implements DeviceService { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + /*static RemovalListener removalListener = new RemovalListener() { public void onRemoval(RemovalNotification removal) { } };*/ private static final Cache deviceCache = CacheBuilder.newBuilder(). - expireAfterAccess(90, TimeUnit.MINUTES).build(); + expireAfterAccess(20, TimeUnit.MINUTES).build(); private static final Cache> subDeviceCache = CacheBuilder.newBuilder(). expireAfterAccess(10, TimeUnit.MINUTES).build(); @@ -44,6 +48,7 @@ public class LocalDeviceServiceImpl implements DeviceService { public List findByParentId(String parentId) { List device = subDeviceCache.getIfPresent(parentId); if (device == null) { + logger.debug("base station {} refresh: "+parentId); device = delegate.findByParentId(parentId); if (device != null) { subDeviceCache.put(parentId, device);