Spring boot 如何评估应用程序中是否使用spring批处理或调度程序?

Spring boot 如何评估应用程序中是否使用spring批处理或调度程序?,spring-boot,spring-batch,spring-scheduled,spring-batch-tasklet,Spring Boot,Spring Batch,Spring Scheduled,Spring Batch Tasklet,我已经在SpringBoot中开发了一个业务逻辑,需要每60天运行一次。我不太清楚是将其转换为spring批处理还是使用调度器注释。 我应该考虑哪些因素来评估同样的情况?他们中的任何一方在表现上比另一方占优势吗? 我是一个新的调度批处理的概念,这是我第一次在相同的工作 如何评估应用程序中是否使用spring批处理或调度程序 SpringBatch不是一个调度程序,所以它不是一个非此即彼的问题。您可以同时使用这两种方法,例如,使用调度程序来调度在给定时间运行的Spring批处理作业 您应该问的问题

我已经在SpringBoot中开发了一个业务逻辑,需要每60天运行一次。我不太清楚是将其转换为spring批处理还是使用调度器注释。 我应该考虑哪些因素来评估同样的情况?他们中的任何一方在表现上比另一方占优势吗? 我是一个新的调度批处理的概念,这是我第一次在相同的工作

如何评估应用程序中是否使用spring批处理或调度程序

SpringBatch不是一个调度程序,所以它不是一个非此即彼的问题。您可以同时使用这两种方法,例如,使用调度程序来调度在给定时间运行的Spring批处理作业

您应该问的问题是:是否值得在SpringBatch作业中转换您在SpringBoot中已经开发的业务逻辑,以受益于SpringBatch提供的功能(整个应用程序可能仍然是一个启动应用程序)


作为旁注,由于您的作业需要每60天运行一次,因此使用
@Scheduled
意味着您将有一个JVM运行两个月来运行作业。除非您同时计划将同一JVM用于其他事情,否则这将是对资源的低效使用。其他调度机制,如
cron
在这种情况下更合适。

完美!谢谢你让我的理解如此清晰。我想这让我的生活更轻松,我不需要打扰我现有的springboot应用程序。因此,为了每60天触发一次应用程序运行,我可以使用crontab,对吗?我认为crontab更适合这种计划。现在,如果您同时使用JVM来调度其他事情,并且更喜欢使用
@Scheduled
,那么它也可以。这取决于你选择正确的方法。如果答案有帮助,请接受。非常感谢。