异步任务中使用队列

大王

前提:
10(或更多)个商户,总共有20(或更多)个资金池。
每个商户下又对应的有多个资金池。

(查询返回慢,所以想用异步去完成,再加上任务多,再在异步http请求任务中使用队列防重复)

业务场景简述:
默认先在一个文件中写死一个时间戳,主程序跑多个定时器,检查是否有新的交易时间戳(操作完成后替换之前的时间戳),若有,交给异步任务,异步中的程序:循环资金池,查询资金池在"之前交易时间戳"和"当前交易时间戳"中是否有资金到账,若有,根据关键字段循环通过接口查询是哪个商户下的并请求接口发起充值。

现在异步任务用的是(http://doc.workerman.net/315283
请问:
如果还想在里面加个队列去处理任务的话,用https://github.com/walkor/workerman-queue好,还是用workerman文档中推荐的队列组件:react/zmq(或react/stomp)。
然后关于队列的还有个问题,如何防止多个进程处理了同一个队列中的任务,就是怎么做这个互斥。

在此,感谢大佬的回复!

4813 1 0
1个回答

walkor

队列都差不多,用哪个都可以。队列一般都自带互斥机制,不用特别处理。

年代过于久远,无法发表回答
🔝