您可以在Spring中为预定任务指定其他执行程序吗?

问题描述 投票:0回答:1

Spring对所有@Scheduled任务使用相同的执行程序。默认情况下,该线程具有1个线程,但是您可以创建一个具有更多线程的自定义线程。

情况:我有两种要安排的工作:

  1. 长期运行的后台作业:不一定需要按时启动,不希望它们全部同时运行,并且绝对不希望每个作业同时运行多个(解决方案:使用具有有限线程池的固定延迟)
  2. 需要在计划的时间运行的频繁,短期运行的作业。 (解决方案:对@Async使用固定汇率)

问题:有限池上的慢速作业直接反对使用@Async运行其他作业理想情况下,我将有2个独立的执行程序,我可以指派它们执行类似

的操作

[@Scheduled(delayedRate=600000, executor="longRunningExecutor")@Scheduled(fixedRate=5000, executor="rightNowExecutor")

但是我找不到支持这种东西的任何东西。

如何确保长时间运行的作业不会占用线程池并阻止当前的作业?

spring-boot asynchronous job-scheduling
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.