2

是否可以使用 Payara Micro 提供持久的 EJB 计时器服务?

我想在集群中有两个或更多应用程序实例。应用程序中有计划任务(@Schedule)。我不喜欢所有实例都运行计时器,只有一个实例应该运行它,但只有一个。

这应该与 @Schedule 中的 persistent=true 一起使用,例如:

@Schedule(second = "*/5", minute = "*", hour = "*", persistent=true)

但是...在部署时我收到消息:

javax.ejb.CreateException: Persistent timers are not supported in this setup

如果我使用 persistent=false 进行部署,它可以工作,但所有集群实例都会执行计时器:

@Schedule(second = "*/5", minute = "*", hour = "*", persistent=false)

这是否意味着我应该使用完全支持 JEE 的完整 Payara (Glassfish),或者在 Payara Micro 中有另一种方法可以启用它?我想坚持简单的标准解决方案,没有自定义代码和第三个库。

为了测试,我运行我的实例:

java -jar payara-micro-4.1.1.162.jar --autoBindHttp --deploy my.war

先感谢您

4

1 回答 1

2

由 Hazelcast 提供支持的持久 EJB 计时器将随 Payara Micro 163 一起提供,即将发布!

于 2016-08-10T19:28:19.540 回答