现在想做一个定时任务来批量查询订单状态存入数据库, 但是查询订单状态的接口在别的微服务,订单数也很多,需要异步处理, 这种情况下有什么好的处理方式吗

2021-03-30 09:23:19 +08:00
 Gaopf
2144 次点击
所在节点    Java
7 条回复
wushigejiajia01
2021-03-30 09:40:22 +08:00
Feign 调用没啥问题吧?

至于定时任务,xxl-job 挺好用的
zby03772018
2021-03-30 09:44:45 +08:00
@wushigejiajia01 xxljob 年更,现在不一堆 bug 吗?
bleepbloop
2021-03-30 10:00:08 +08:00
让另一个服务在有订单状态变化时,把变化推送到一个 Queue 里面行不行?
dqzcwxb
2021-03-30 10:18:01 +08:00
其他的不说,异步这块用 Completablefuture+Fork/join
hantsy
2021-03-30 10:37:53 +08:00
Message broker, 订单 MS 更新状态,发送一个更新事件。
你的 MS 订阅就行了。
rapperx2
2021-03-30 13:43:48 +08:00
@wushigejiajia01 xxljob 的漏洞导致直接被挖矿,挖矿程序直接把所有运行的业务服务进程 K 了,直接一晚上数据没了
yidinghe
2021-03-30 13:59:29 +08:00
简单的办法是对方提供一个遍历接口,根据订单最后的状态更新时间来查询最多比如 100 条记录,你记住返回结果中的最大时间,作为下次查询的条件,这样只要你处理的速度够快,就能通过定时任务遍历完所有的订单记录。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/766370

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX