我需要在部署后立即进行轮询,即0秒,然后使用cron
每45分钟进行一次应如下调查:: 00:00,00:45,1:30,2:15,3:00等等
答案 0 :(得分:2)
为什么必须使用cron?
在这种情况下,最好的选择是不要使用cron ,而是使用Mule的内置fixed-frequency scheduler:
注意默认延迟是如何" 0"这意味着它将在部署后立即运行,然后每隔45分钟运行一次。
这是configuration-xml:
...
<flow name="polling-frequency-example-flow"
processingStrategy="synchronous">
<poll doc:name="poll-every-forty-five-mins">
<fixed-frequency-scheduler frequency="45" timeUnit="MINUTES"/>
</poll>
<!-- Do Something -->
</flow>
...
答案 1 :(得分:1)
我不知道如何在Mule中进行民意调查,但我可以帮助您完成cron计划。
Cron不支持每45分钟一次。你必须把它分成三个cronjobs:
答案 2 :(得分:0)
CRON表达每45分钟轮询一次,这将解决你的第一个问题。
0 0/45 * 1/1 *? *
部署后立即运行一次不能用&#34; Poll&#34;我所知道的。作为一种解决方法,除了上面的Poll组件之外,使用&#34; QUARTZ Inbound Endpoint&#34;创建另一个流程。它有一个repeatCount属性,您可以将其设置为&#34; Zero&#34;(这将只运行一次并且不会重复自身)。
答案 3 :(得分:0)
Cron表达式(每45分钟):0 0/45 * 1/1 *? *
如果你想每隔45分钟(00:15,01:00这样)运行,请使用石英。 如果您使用轮询操作,它将不会每45分钟运行一次,它将在项目或流程部署时每45分钟运行一次。
答案 4 :(得分:0)
只需使用@Mooz所述的固定频率调度程序构造,然后获取当前时间,检查它是否是星期日,如果是,则不进行处理。 cron表达式并不是真正直接用于处理所有立即运行的约束,相对于开始时间而不是时钟计划的频率,以及即使使用Mule对cron的扩展的日期调度。其他解决方案是使用两个控制器,但这对我来说似乎更清晰。
答案 5 :(得分:0)
每10秒运行一次
0/10 * * * * ?
每45分钟运行一次
* 0/45 * * * ?
答案 6 :(得分:-1)
只需简单地使用固定频率调度程序,而不是使用Cron作业。 设置值如下:
频率:45 开始延迟为:0
时间单位为:分钟