我的系统,有一部分的业务是“查询其它系统的订单处理结果,然后更新我的订单状态”。
目前问了两个“前辈”,都说写定时任务,去数据库里扫表,拿出处理中的订单,去挨个轮询状态。
我一直以为这种操作(查其它系统,修改自己订单的操作。)应该扔给消息队列,作为异步任务去处理。
但是前辈说,消息队列,不安全,会丢失,那么我想请教两个问题。
1.消息队列不安全,会丢失,是指什么?是指载体,类似 rabbitmq 和 redis 数据是放在内存的?难倒不可以持久化么?还是其它原因?
2.是不是相比于“查询补单”这样的业务,将结果通知给其它系统,这种业务更适合使用消息队列的异步任务( rabbitmq+celery )。
1
cxe2v 2015-11-05 11:50:30 +08:00
这个问题你不是问说出这个话的前辈更好吗?
|
2
helloworldwt 2015-11-05 13:20:19 +08:00 via iPhone
其实也看你使用的是哪种消息队列
|
3
xufang 2015-11-05 13:23:17 +08:00
赞同你的前辈,这个得多趟坑才知道如何选择。
|