思路:
只让一台机器上的定时任务执行即可;
多台机器如何识别?>>>机器IP地址
最简单的方式,我们在服务配置中,配置一个ip地址,在定时任务方法执行最前面判断当前机器ip是否是所配置的ip即可;
以上是需要配置的方式,下面使用不需要配置的方式:
服务集群后,spring cloud 体系下可获取该服务集群所有的ip地址,那么我们可以写一个规则,比如将ip地址转成long类型,然后排序,最小值那台机器负责执行任务,只需将本机ip转long,再与整个集群ip转long并排序的第一个比较,相等则放行继续;
后面将贴上代码