【发布时间】:2021-01-26 01:30:18
【问题描述】:
我的应用程序有一个调度程序,它每 10 秒从数据库请求一次数据并对其进行处理。我可以运行 2 个应用程序实例:第一个是不断运行的开发服务器,第二个是我的本地服务器。两个实例都从同一个数据库中获取数据。问题是当我在本地进行编辑并想要测试它们时,因为开发服务器正在运行,它可以在本地服务器之前拦截和处理我的数据。这可能会发生多次,并且非常令人不安。有什么办法可以让只有我的本地实例在调度程序中执行任务,而开发服务器只是跳过它?我的意思是我需要我的本地调度程序每 10 秒按计划运行一次,并且开发服务器上的调度程序在我的本地实例运行时跳过了该任务。可能吗?或者有没有图书馆?
【问题讨论】:
-
两个实例都从同一个数据库中获取数据,这就是问题所在。为什么不能在本地复制它以用于开发目的?
-
您可以通过不同的方式执行锁定,包括通过单独的数据库表进行锁定,但所有这些都只是棘手的解决方法。相反,您应该为两个实例使用单独的数据源。
标签: java spring scheduler multiple-instances