解决一个特定的负载均衡下定时任务执行多次的问题

项目每天晚上有个定时任务,把redis缓存数据重新连接数据库刷新一遍,耗时大约40分钟。但问题是项目是nginx负载均衡,这个定时任务会执行多次。经过一些思考之后,用以下办法解决:

redis里加一个key,名字是指定名称+日期。定时任务启动后,会去redis里查看是否存在这个key,如果存在就不执行定时任务,不存在就创建这个key并执行定时任务。这样无论这个任务被调取了多少次,它只会执行最开始的一次。

posted @ 2018-01-09 15:23  rock_turf  阅读(960)  评论(0编辑  收藏  举报