分布式任务调度如何解决定时任务幂等性问题

分布式任务调度如何解决定时任务幂等性问题

在这里给大家介绍到,怎么样解决在集群的情况情况下,保证定时任务的幂等性问题。
常用四种解决方案:
①使用zookeeper,实现分布式锁解决.
②使用配置文件,加上开关,在打war时,标识是否启动.
③使用数据库唯一约束,启动时,往数据库插入一条记录,如果报错,就不执行任务
④使用分布式任务平台,强烈推荐,因为简单,支持集群,容错,可配置,分片化。
---------------------------------------------------------------------------------------
原理分析:
在大型电商互联网公司中,都有专门自己的分布式任务调度平台工具,其实分布式
调度平台原理非常简单,就是将所有的任务调度全部存放在一个任务调度中心,
让后再使用任务调度中心转发到具体要执行job的地址,类似nginx反向代理,这样就可以解决,
每次执行时保证幂等性,不被重复问题。
--------------------------------------------------------------------------------------
蚂蚁课堂内部培训资料之-分布式JOB如何保证幂等性。
http://www.itmayiedu.com/front/couinfo/97/0 



开源的分布式任务调度平台很多,xxljob(大众点评内部开发,已经开源了,目前最火。),antares、TaskManager。



任务调度平台,也可以做集群,执行器 也可以做集群,失败了,可以支持容错,重试,重启,补偿,报警等功能。


你可能感兴趣的:(微服务)