From 8075103992e9482fddd4a579d97b9a50c5dcf550 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 24 十月 2020 18:26:43 +0800 Subject: [PATCH] 爱奇艺资源更新优化 --- src/main/java/com/yeshi/buwan/util/SpringContext.java | 118 ++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 77 insertions(+), 41 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/util/SpringContext.java b/src/main/java/com/yeshi/buwan/util/SpringContext.java index 3ae79ca..5858532 100644 --- a/src/main/java/com/yeshi/buwan/util/SpringContext.java +++ b/src/main/java/com/yeshi/buwan/util/SpringContext.java @@ -1,6 +1,8 @@ package com.yeshi.buwan.util; +import com.yeshi.buwan.domain.ResourceVideo; import com.yeshi.buwan.domain.VideoInfo; +import com.yeshi.buwan.dto.mq.CMQConsumeMsg; import com.yeshi.buwan.dto.mq.FunTVAlbum2MQMsg; import com.yeshi.buwan.dto.mq.IqiyiAlbum2MQMsg; import com.yeshi.buwan.dto.mq.SolrVideoMQMsg; @@ -8,6 +10,7 @@ import com.yeshi.buwan.funtv.entity.FunTVVideo2; import com.yeshi.buwan.iqiyi.entity.IqiyiAlbum2; import com.yeshi.buwan.service.imp.JobThreadExecutorServiceImpl; +import com.yeshi.buwan.service.imp.ResourceVideoService; import com.yeshi.buwan.service.imp.VideoInfoService; import com.yeshi.buwan.service.inter.juhe.FunTV2Service; import com.yeshi.buwan.service.inter.juhe.Iqiyi2Service; @@ -43,6 +46,9 @@ @Resource private FunTV2Service funTV2Service; + @Resource + private ResourceVideoService resourceVideoService; + private static boolean isInited = false; @@ -68,6 +74,7 @@ doSolrJob(); doAddIqiyi2Video(); doAddFunTV2Video(); + doDeleteVideoResource(); } } @@ -75,22 +82,22 @@ new JobThreadExecutorServiceImpl().run(new Runnable() { @Override public void run() { - List<SolrVideoMQMsg> solrMsgList = CMQManager.getInstance().consumeSolrMsg(16); - if (solrMsgList != null) - for (SolrVideoMQMsg solrVideo : solrMsgList) { - try { - VideoInfo videoInfo = videoInfoService.getVideoInfo(solrVideo.getId()); - if (videoInfo != null) { - if ("1".equalsIgnoreCase(videoInfo.getShow())) - solrDataManager.saveOrUpdate(videoInfo); - else - solrDataManager.deleteById(videoInfo.getId()); - } - CMQManager.getInstance().deleteSolrMsg(solrVideo.getHandler()); - } catch (Exception e) { + List<SolrVideoMQMsg> solrMsgList = CMQManager.getInstance().consumeSolrMsg(16); + if (solrMsgList != null) + for (SolrVideoMQMsg solrVideo : solrMsgList) { + try { + VideoInfo videoInfo = videoInfoService.getVideoInfo(solrVideo.getId()); + if (videoInfo != null) { + if ("1".equalsIgnoreCase(videoInfo.getShow())) + solrDataManager.saveOrUpdate(videoInfo); + else + solrDataManager.deleteById(videoInfo.getId()); + } + CMQManager.getInstance().deleteSolrMsg(solrVideo.getHandler()); + } catch (Exception e) { + } } - } } }); } @@ -100,22 +107,22 @@ new JobThreadExecutorServiceImpl().run(new Runnable() { @Override public void run() { - List<IqiyiAlbum2MQMsg> iqiyiAlbumMsgList = CMQManager.getInstance().consumeIqiyiAlbumUpdateMsg(16); - if (iqiyiAlbumMsgList != null) - for (IqiyiAlbum2MQMsg iqiyiAlbum2MQMsg : iqiyiAlbumMsgList) { - try { - Long qikuID = iqiyiAlbum2MQMsg.getId(); - IqiyiAlbum2 album2 = iqiyi2Service.selectAlbumById(qikuID); - if (album2 != null) { - iqiyi2Service.addToVideoInfo(album2); + List<IqiyiAlbum2MQMsg> iqiyiAlbumMsgList = CMQManager.getInstance().consumeIqiyiAlbumUpdateMsg(16); + if (iqiyiAlbumMsgList != null) + for (IqiyiAlbum2MQMsg iqiyiAlbum2MQMsg : iqiyiAlbumMsgList) { + try { + Long qikuID = iqiyiAlbum2MQMsg.getId(); + IqiyiAlbum2 album2 = iqiyi2Service.selectAlbumById(qikuID); + if (album2 != null) { + iqiyi2Service.addToVideoInfo(album2); + } + CMQManager.getInstance().deleteIqiyiAlbumUpdateMsg(iqiyiAlbum2MQMsg.getHandler()); + } catch (Exception e) { + logger.error("鐖卞鑹轰笓杈戞坊鍔犲埌瑙嗛鍑洪敊锛�" + e.getMessage()); + logger.error("ID:" + iqiyiAlbum2MQMsg.getId()); } - CMQManager.getInstance().deleteIqiyiAlbumUpdateMsg(iqiyiAlbum2MQMsg.getHandler()); - } catch (Exception e) { - logger.error("鐖卞鑹轰笓杈戞坊鍔犲埌瑙嗛鍑洪敊锛�" + e.getMessage()); - logger.error("ID:" + iqiyiAlbum2MQMsg.getId()); } - } - } + } }); } @@ -125,21 +132,50 @@ new JobThreadExecutorServiceImpl().run(new Runnable() { @Override public void run() { - List<FunTVAlbum2MQMsg> funTVAlbum2MsgList = CMQManager.getInstance().consumeFunTVAlbumUpdateMsg(16); - if (funTVAlbum2MsgList != null) - for (FunTVAlbum2MQMsg funTVAlbum2MQMsg : funTVAlbum2MsgList) { - try { - String mediaId = funTVAlbum2MQMsg.getId(); - FunTVAlbum2 album2 = funTV2Service.getAlbumDetail(mediaId); - if (album2 != null) { - funTV2Service.processAlbum(album2); + List<FunTVAlbum2MQMsg> funTVAlbum2MsgList = CMQManager.getInstance().consumeFunTVAlbumUpdateMsg(16); + if (funTVAlbum2MsgList != null) + for (FunTVAlbum2MQMsg funTVAlbum2MQMsg : funTVAlbum2MsgList) { + try { + String mediaId = funTVAlbum2MQMsg.getId(); + FunTVAlbum2 album2 = funTV2Service.getAlbumDetail(mediaId); + if (album2 != null) { + funTV2Service.processAlbum(album2); + } + CMQManager.getInstance().deleteFunTVAlbumUpdateMsg(funTVAlbum2MQMsg.getHandler()); + } catch (Exception e) { + logger.error("椋庤涓撹緫娣诲姞鍒拌棰戝嚭閿欙細" + e.getMessage()); + logger.error("ID:" + funTVAlbum2MQMsg.getId()); } - CMQManager.getInstance().deleteFunTVAlbumUpdateMsg(funTVAlbum2MQMsg.getHandler()); - } catch (Exception e) { - logger.error("椋庤涓撹緫娣诲姞鍒拌棰戝嚭閿欙細" + e.getMessage()); - logger.error("ID:" + funTVAlbum2MQMsg.getId()); } - } + } + }); + + } + + private void doDeleteVideoResource() { + new JobThreadExecutorServiceImpl().run(new Runnable() { + @Override + public void run() { + while (true) { + List<CMQConsumeMsg> cmqMsgList = CMQManager.getInstance().consumeVideoResourceDeleteMsg(16); + if (cmqMsgList != null) + for (CMQConsumeMsg msg : cmqMsgList) { + try { + String videoId = msg.getData() + ""; + //鏌ヨ璧勬簮鍒楄〃 + List<ResourceVideo> resourceVideoList = resourceVideoService.getResourceList(videoId); + //闅愯棌瑙嗛 + if (resourceVideoList == null || resourceVideoList.size() == 0) + videoInfoService.hiddenVideo(videoId); + //鏇存柊鎼滅储寮曟搸 + CMQManager.getInstance().addSolrMsg(videoId); + CMQManager.getInstance().deleteVideoResourceDeleteMsg(msg.getHandler()); + } catch (Exception e) { + logger.error("瑙嗛璧勬簮鍒犻櫎澶勭悊鍑洪敊锛�" + e.getMessage()); + logger.error("ID:" + msg.getData()); + } + } + } } }); -- Gitblit v1.8.0