Authored by wangnan

修改定时任务时间

... ... @@ -6,8 +6,6 @@ import com.yohomars.search.utils.ISearchConstans;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.context.ApplicationEventPublisherAware;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
... ... @@ -15,56 +13,48 @@ import org.springframework.stereotype.Component;
* 定时任务
*/
@Component
public class IndexRebuildJob implements ApplicationEventPublisherAware{
public class IndexRebuildJob {
@Autowired
private IYohoIndexService yohoIndexService;
@Autowired
private RebuildFlagService rebuildFlagService;
@Autowired
private IYohoIndexService yohoIndexService;
@Autowired
private RebuildFlagService rebuildFlagService;
private static final Logger logger = LoggerFactory.getLogger(IndexRebuildJob.class);
private ApplicationEventPublisher publisher;
private static final Logger logger = LoggerFactory.getLogger(IndexRebuildJob.class);
/**
* 定时任务重建所有索引
*/
@Scheduled(cron="0 0 3 * * ?")
public void execute() {
long begin = System.currentTimeMillis();
logger.info("indexRebuildJob execute start----[begin={}]", begin);
this.rebuildIndex(ISearchConstans.INDEX_NAME_BIZAREA);
this.rebuildIndex(ISearchConstans.INDEX_NAME_COMMENT);
this.rebuildIndex(ISearchConstans.INDEX_NAME_LINE);
this.rebuildIndex(ISearchConstans.INDEX_NAME_STORE);
this.rebuildIndex(ISearchConstans.INDEX_NAME_TOPIC);
logger.info("indexRebuildJob execute end----[end={}][cost={}ms]", System.currentTimeMillis(), (System.currentTimeMillis() - begin));
}
/**
* 重建索引
* @param indexName
/**
* 定时任务重建所有索引
*/
@Scheduled(cron = "0 0/2 * * * ? ")
public void execute() {
long begin = System.currentTimeMillis();
logger.info("indexRebuildJob execute start----[begin={}]", begin);
this.rebuildIndex(ISearchConstans.INDEX_NAME_BIZAREA);
this.rebuildIndex(ISearchConstans.INDEX_NAME_COMMENT);
this.rebuildIndex(ISearchConstans.INDEX_NAME_LINE);
this.rebuildIndex(ISearchConstans.INDEX_NAME_STORE);
this.rebuildIndex(ISearchConstans.INDEX_NAME_TOPIC);
logger.info("indexRebuildJob execute end----[end={}][cost={}ms]", System.currentTimeMillis(), (System.currentTimeMillis() - begin));
}
/**
* 重建索引
*
* @param indexName
*/
private void rebuildIndex(String indexName) {
try {
long begin = System.currentTimeMillis();
logger.info("rebuild index start----[indexName={}][begin={}]", indexName, begin);
rebuildFlagService.waitingRebuildingIndex();
yohoIndexService.rebuild(indexName);
logger.info("rebuild index end----[indexName={}][end={}][cost={}ms]", indexName, System.currentTimeMillis(), (System.currentTimeMillis() - begin));
} catch (Exception e) {
// publisher.publishEvent(new SearchEvent(EventReportEnum.INDEXREBUILDJOB_REBUILDINDEXWITHLOG.getEventName(),
// EventReportEnum.INDEXREBUILDJOB_REBUILDINDEXWITHLOG.getFunctionName(),
// EventReportEnum.INDEXREBUILDJOB_REBUILDINDEXWITHLOG.getMoudleName(),"exception",IgnoreSomeException.filterSomeException(e),null));
logger.error(e.getMessage(), e);
}
}
private void rebuildIndex(String indexName) {
try {
long begin = System.currentTimeMillis();
logger.info("rebuild index start----[indexName={}][begin={}]", indexName, begin);
rebuildFlagService.waitingRebuildingIndex();
yohoIndexService.rebuild(indexName);
logger.info("rebuild index end----[indexName={}][end={}][cost={}ms]", indexName, System.currentTimeMillis(), (System.currentTimeMillis() - begin));
} catch (Exception e) {
logger.error(e.getMessage(), e);
}
}
@Override
public void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher) {
this.publisher = applicationEventPublisher;
}
}
... ...