将日计划进行拆分,每个航班id的日计划作为一条消息发送到kafka 。减轻前端压力及提升处理性能和稳定性。

This commit is contained in:
zhouxiunai
2018-12-21 16:20:04 +08:00
parent 992823f112
commit 5768d3388b
@@ -1,15 +1,17 @@
package com.gzzn.omms.msgexchangeapi.msghandler.schd.base; package com.gzzn.omms.msgexchangeapi.msghandler.schd.base;
import java.util.Arrays; import java.util.Arrays;
import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import com.gzzn.omms.msgexchangeapi.entity.Cminmsg; import com.gzzn.omms.msgexchangeapi.entity.Cminmsg;
import com.gzzn.omms.msgexchangeapi.entity.msg.MSG;
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD; import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD;
import com.gzzn.omms.msgexchangeapi.entity.msg.SCHD.FLTR;
import com.gzzn.omms.msgexchangeapi.msghandler.HandlerResult; import com.gzzn.omms.msgexchangeapi.msghandler.HandlerResult;
import com.gzzn.omms.msgexchangeapi.msghandler.IBaseHandler; import com.gzzn.omms.msgexchangeapi.msghandler.IBaseHandler;
import com.gzzn.omms.msgexchangeapi.msghandler.schd.DNLDHandler;
import com.gzzn.omms.msgexchangeapi.service.ICminmsgService; import com.gzzn.omms.msgexchangeapi.service.ICminmsgService;
import com.gzzn.omms.msgexchangeapi.service.IKafkaService; import com.gzzn.omms.msgexchangeapi.service.IKafkaService;
import com.gzzn.omms.msgexchangeapi.service.exchange.IExchangeService; import com.gzzn.omms.msgexchangeapi.service.exchange.IExchangeService;
@@ -49,13 +51,24 @@ public class SchdBaseHandler implements IBaseHandler{
*/ */
protected void sendDschd(Cminmsg cminmsg) protected void sendDschd(Cminmsg cminmsg)
{ {
//send msg //将每条计划转成一条json消息推送到kafka
String msg = exchangeService.xmlstrToJson( String clobMsg = cminmsg.getCminmsgsClobMsg();
cminmsg.getCminmsgsClobMsg() MSG dnldMsg = exchangeService.xmlstrToObject(clobMsg, MSG.class);
);
//
List<SCHD.FLTR> lsFltr = dnldMsg
.getSCHD()
.getFLTR();
logger.info("准备发送日计划到kafka"); logger.info("准备发送日计划到kafka");
kafkaservice.msgSend("dschd", msg);
for(FLTR fltr : lsFltr)
{
//send msg
String msgJson = JsonUtil.getStringWithNoneKey(fltr);
kafkaservice.msgSend("dschd", msgJson);
}
logger.info("发送日计划到kafka完毕"); logger.info("发送日计划到kafka完毕");
} }