项目每天晚上有个定时任务,把redis缓存数据重新连接数据库刷新一遍,耗时大约40分钟。但问题是项目是nginx负载均衡,这个定时任务会执行多次。经过一些思考之后,用以下办法解决:
redis里加一个key,名字是指定名称+日期。定时任务启动后,会去redis里查看是否存在这个key,如果存在就不执行定时任务,不存在就创建这个key并执行定时任务。这样无论这个任务被调取了多少次,它只会执行最开始的一次。
标签:div 定时 数据 启动 特定 负载均衡 多次 nginx负载均衡 不执行
项目每天晚上有个定时任务,把redis缓存数据重新连接数据库刷新一遍,耗时大约40分钟。但问题是项目是nginx负载均衡,这个定时任务会执行多次。经过一些思考之后,用以下办法解决:
redis里加一个key,名字是指定名称+日期。定时任务启动后,会去redis里查看是否存在这个key,如果存在就不执行定时任务,不存在就创建这个key并执行定时任务。这样无论这个任务被调取了多少次,它只会执行最开始的一次。
标签:div 定时 数据 启动 特定 负载均衡 多次 nginx负载均衡 不执行
原文地址:https://www.cnblogs.com/rock-turf/p/8251631.html