Commit 56ab754a by 阮思源

换成异步

parent 63549fd8
......@@ -4,6 +4,7 @@ import com.pcloud.book.book.dao.BookDao;
import com.pcloud.book.es.biz.ESBookAndAdviserBiz;
import com.pcloud.book.es.entity.ESBookAndAdviser;
import com.pcloud.book.es.repository.BookAndAdviserRepository;
import com.pcloud.book.util.common.ThreadPoolUtils;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.utils.ListUtils;
import com.pcloud.common.utils.string.StringUtil;
......@@ -42,23 +43,27 @@ public class ESBookAndAdviserBizImpl implements ESBookAndAdviserBiz {
@Transactional(rollbackFor = Exception.class)
@Override
public void addAllBookAndAdviserToES() {
Integer count = bookDao.count();
LOGGER.info("总数:" + count);
if (null == count || count <= 0) {
return;
}
Long maxId = 0L;
Integer index = 0;
Integer offset = 10000;
while (index * offset < count) {
List<ESBookAndAdviser> list = bookDao.findAllBookAndAdviser(maxId, offset);
if (ListUtils.isEmpty(list)) {
break;
ThreadPoolUtils.OTHER_THREAD_POOL.execute(() -> {
Integer count = bookDao.count();
LOGGER.info("总数:" + count);
if (null == count || count <= 0) {
return;
}
bookAndAdviserRepository.save(list);
maxId = Long.valueOf(list.get(list.size() - 1).getBookId());
index += 1;
}
Long maxId = 0L;
Integer index = 0;
Integer offset = 10000;
List<ESBookAndAdviser> list;
while (index * offset < count) {
list = bookDao.findAllBookAndAdviser(maxId, offset);
if (ListUtils.isEmpty(list)) {
break;
}
bookAndAdviserRepository.save(list);
maxId = Long.valueOf(list.get(list.size() - 1).getBookId());
index += 1;
list.clear();
}
});
}
@ParamLog("更新书和编辑书")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment