猿问
分布式环境下,定时任务或异步处理如何保持幂等性?
如题:
分布式环境下,定时任务或异步处理如何保持幂等性?
函数式编程
浏览 972
回答 9
9回答
鸿蒙传说
个人并没有这方面的经验,不过公司里的做法是用IP做判断,指定的IP才能去执行这个定时任务。以下为个人空想,并无实践经验:搭建一个公共应用专门处理定时任务,然后提供消息接口给具体应用调用。
0
0
0
收到一只叮咚
用事务来实现吧,分布式事务,或者消息队列
0
0
0
慕容森
可以考虑具备ack机制的消息队列,比如RabbitMQ等,既保证了一条任务只分配给一个worker,也保证了任务成功与否的完整性
0
0
0
MMTTMM
我们是通过zk调度来实现的,分布式环境中通一任务最多只能有一台机器执行,zk很好实现这种功能
0
0
0
慕娘9325324
到目前为止所有答案都是错的,包括那个被采纳的。原因是,定时任务或异步处理,与幂等性无关。
0
0
0
阿晨1998
redis + token就可以的
0
0
0
SMILET
用队列,取了就没了,只会执行一次,执行失败在丢回队列等下次
0
0
0
随时随地看视频
慕课网APP
相关分类
Java
我要回答