1.完善采集线程的未知异常捕获。2.设置采集线程名字 3.去除多余的日志打印
This commit is contained in:
@@ -29,24 +29,22 @@ public class MsgExchangeRunner implements Runnable{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
logger.info("进入获取动态航班消息...");
|
try
|
||||||
|
{
|
||||||
|
//获取航班动态消息
|
||||||
|
List<Cminmsg> lsCminmsgs = cminmsgService.getNewMsgsAfterId(0L);
|
||||||
|
if(null == lsCminmsgs || lsCminmsgs.size() <= 0)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
//获取航班动态消息
|
//分发消息进行处理
|
||||||
List<Cminmsg> lsCminmsgs = cminmsgService.getNewMsgsAfterId(0L);
|
for (Cminmsg cminmsg : lsCminmsgs) {
|
||||||
if(null == lsCminmsgs || lsCminmsgs.size() <= 0)
|
msgHandlerDispatcher.dispatch(cminmsg);
|
||||||
{
|
}//end for
|
||||||
logger.info("本周期没有获取到最新消息,直接退出本次循环");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
logger.info("获取到{}条最新信息,准备更新动态航班信息",lsCminmsgs.size());
|
logger.error("采集线程捕获未知异常:{}",e.getMessage());
|
||||||
|
}
|
||||||
//分发消息进行处理
|
|
||||||
for (Cminmsg cminmsg : lsCminmsgs) {
|
|
||||||
msgHandlerDispatcher.dispatch(cminmsg);
|
|
||||||
}//end for
|
|
||||||
|
|
||||||
logger.info("本次定时获取新消息完成...");
|
|
||||||
}//end run
|
}//end run
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,11 +2,13 @@ package com.gzzn.omms.msgexchangeapi.service;
|
|||||||
|
|
||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
import java.util.concurrent.ScheduledExecutorService;
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
|
import java.util.concurrent.ThreadFactory;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import com.google.common.util.concurrent.ThreadFactoryBuilder;
|
||||||
import com.gzzn.omms.msgexchangeapi.runner.MsgExchangeRunner;
|
import com.gzzn.omms.msgexchangeapi.runner.MsgExchangeRunner;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@@ -25,7 +27,10 @@ public class MsgExchangeServiceImpl implements IMsgExchangeService {
|
|||||||
{
|
{
|
||||||
//启动消息采集线程
|
//启动消息采集线程
|
||||||
if (null == scheduledExecutorService) {
|
if (null == scheduledExecutorService) {
|
||||||
scheduledExecutorService = Executors.newScheduledThreadPool(1);
|
ThreadFactory namedThreadFactory =
|
||||||
|
new ThreadFactoryBuilder().setNameFormat("msgexchange-%d").build(); //为线程池添加名字
|
||||||
|
|
||||||
|
scheduledExecutorService = Executors.newScheduledThreadPool(1, namedThreadFactory);
|
||||||
scheduledExecutorService.scheduleAtFixedRate(new MsgExchangeRunner(), 0, intervalSeconds , TimeUnit.SECONDS);
|
scheduledExecutorService.scheduleAtFixedRate(new MsgExchangeRunner(), 0, intervalSeconds , TimeUnit.SECONDS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user