起因:订单日志没有保存到es
解决流程:
查看book3-message的报错日志
发现如下两种异常
第一种异常:
线程池的问题,EsThreadPoolExecutor[bulk, queue capacity = 50, org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor@5e6ba269[Running, pool size = 16, active threads = 16, queued tasks = 56, completed tasks = 41706906]]];];req:org.elasticsearch.action.bulk.BulkRequestBuilder@27779be
修改了es的线程池配置,线程池的最大数要小于等于es所在服务器的cpu数量;
参考文档:https://www.cnblogs.com/kangoroo/p/7615833.html
第二种异常:
数据更新时版本不一致导致;解决方式:将更新es数据的方式从UpdateRequestBuilder改成UpdateByQueryRequestBuilder这种方式,主要是设置abortOnVersionConflict(false)这个参数;
参考文档:
https://blog.csdn.net/zhou_shaowei/article/details/80079162为了防止版本冲突导致updateByQuery中止,设置终止冲突(false)
https://blog.csdn.net/qq_37502106/article/details/80604538