部署到Linux服务器,定时任务执行两次

情况说明,使用定时器生成数据:

代码

@Component
@Slf4j
public class TestTask {
	
	@Scheduled(cron=" 0/10 * * * * ?")
	@Synchronized
	public void testTask(){
		log.info("start............");
		for(int i = 0; i <5; i++){
			log.info("==========当前数值:" + i);
		}
		log.info("end............");
	}
    
}

本地执行win执行正常,只执行一次

部署到Linux环境后:

解决方案:

1.尝试使用线程启动,依然执行两条

2.尝试线程添加事务,添加锁,依然两条

3.尝试入库前判断,db是否存在该数据,有则不插入,依然两条

4.。。。。。。无语

 

最后发现:

appBase="webapps"

docBase="app"

以上两个参数是host里面的 只需要删除一个就行

我的处理:把appBase的内容情况即可,即:appBase=""

重启,再次执行结果:

谨以此笔记,坑了我两次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值