草庐IT

scheduler_cron

全部标签

spring - 特定日期的 Cron 表达式

我想要一个代表2010年9月6日上午6:00的cron表达式 最佳答案 原始问题被标记为cron,因此第一部分适用于此。有关QuartzCronTrigger工具的更新答案,请参见下文。大多数crontab不允许您指定年份,因此您可能必须将其放入脚本本身(或脚本/程序的包装器)。你可以这样做:#Onlyrunin2010.if[[$(date+%Y)!=2010]];thenexitfi您希望在每年9月6日早上6点运行的选项是:0669*your_command_goes_here│││││││││└─anydayoftheweek

java - TaskScheduler、@Scheduled 和 quartz

有没有办法让@Scheduled使用quartz作为底层调度程序?我能想到的两件事,但都需要一些工作:创建一个自定义BeanPostProcessor,它将解析@Scheduled注释并注册quartz作业实现TaskScheduler以委托(delegate)给quartzScheduler。问题是:是否已经为上述两个选项编写了一些内容,还有其他选项吗? 最佳答案 我最终制作了自己的Springquartz“桥”。我计划建议将其作为对spring的改进。首先,我创建了一个新注解,将放置在实现quartzJob接口(interfac

spring - 为什么 Spring 不运行我的 @Scheduled 方法?

我有点困惑,因为我正在尝试使用@Scheduled注释,但Spring似乎没有找到我的方法。最终结果是,我用@Scheduled注释的方法都没有被执行。我通过以下声明调用了Spring的任务魔法:我有一个看起来像这样的界面:packagecom.mypackage;publicinterfaceMyInterface{publicvoidexecutePeriodically();}对应的impl如下:packagecom.mypackage.impl;//importsomittedforbrevity@ServicepublicclassMyInterfaceImplimpleme

java - 为 Spring @Scheduled 提供时区?

如何为基于Spring的@Scheduledcron作业配置时区?背景:我有一个工作每天执行一次,比如下午2点,使用Spring的@Scheduled注释:@Scheduled(cron="0014***")publicvoidexecute(){//doscheduledjob}问题在于不同服务器之间的下午2点不同,因为Spring在TimeZone.getDefault()internally上使用。此外,TimeZone.getDefault()的JavaDoc声明:GetsthedefaultTimeZoneforthishost.ThesourceofthedefaultTi

java - Spring 调度: @Scheduled vs Quartz

我正在阅读Spring3.0docs关于调度。我倾向于使用Spring的JobDetailBeanforQuartz。然而,@Scheduled注释吸引了我的眼球。看来这是使用SpringFramework调度任务的另一种方式。根据文档,Spring提供了三种调度方式:@Scheduled通过quartz通过JDK定时器我对JDKTimer不感兴趣。为什么我应该选择@Scheduled而不是Quartz?(当我提到Quartz时,我的意思是使用Spring的Quartzbean包装器)。假设我的用例足够复杂,我将与第三方Web服务通信,以指定的时间间隔导入和导出数据。

java - spring @Scheduled 注释方法是否在不同的线程上运行?

我有几个用@Scheduled(fixedDelay=10000)注释的方法。在应用程序上下文中,我有这个注释驱动的设置:问题是,有时某些方法的执行会延迟几秒甚至几分钟。我假设即使一个方法需要一段时间才能完成执行,其他方法仍然会执行。所以我不明白延迟。有没有办法减少甚至消除延迟? 最佳答案 为了完整起见,下面的代码显示了使用javaconfig配置调度程序的最简单方法:@Configuration@EnableSchedulingpublicclassSpringConfiguration{@Bean(destroyMethod="

spring - quartz : Cron expression that will never execute

我知道有重复的here,这可能正是我的情况,尽管它应该得到一些更好的解释,我将在这里尝试提供。我使用Spring应用程序上下文处理JavaWeb应用程序。在这种情况下,我使用Quartz定义了计划作业。这些作业由.properties文件中定义的cron触发。Spring上下文嵌入在war中,而.properties文件位于应用程序服务器上(在本例中为Tomcat)。这很好,允许根据环境(开发、集成、生产......)定义不同的crons。现在,当在我自己的计算机上本地运行此应用程序时,我不希望执行这些作业。有没有办法编写一个永远不会触发的cron表达式?

android - 使用 Rxjava Schedulers.newThread() 与 Schedulers.io() 进行改造

在Retrofit网络请求中使用Schedulers.newThread()与Schedulers.io()有什么好处。我见过很多使用io()的例子,但我想了解原因。示例情况:observable.onErrorResumeNext(refreshTokenAndRetry(observable)).subscribeOn(Schedulers.newThread()).observeOn(AndroidSchedulers.mainThread())...对observable.onErrorResumeNext(refreshTokenAndRetry(observable)).s

ubuntu - 在不同主机上的 Docker 中运行 cron 的问题

我正在尝试运行一个docker容器来管理我的cronjobs我在使用centOS6.5基础的docker容器中运行一个非常简单的cron作为测试*****/bin/echo"itworks!">>test.log如果容器在CoreOS主机上运行,​​它可以正常工作,但是如果我在ubuntu13.10主机上运行容器,则不会执行cron。(我虽然主机没有影响容器中运行的内容)两台主机都在运行docker0.8我是否遗漏了一些明显的东西,或者这是一个错误?谢谢 最佳答案 简短回答将此行添加到您的dockerfile中RUNsed-i'/s

linux - 如何在 docker 容器中运行 cron 作业

我尝试在docker容器中运行cron作业,但对我没有任何作用。我的容器只有cron.daily和cron.weekly文件。crontab,cron.d,cron.hourly在我的容器中不存在。crontab-e也不起作用。我的容器使用/bin/bash运行。 最佳答案 这是我运行我的一个cron容器的方法。Dockerfile:FROMalpine:3.3ADDcrontab.txt/crontab.txtADDscript.sh/script.shCOPYentry.sh/entry.shRUNchmod755/script