是否可以通过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中还有另一种方法可以实现这一点?我想坚持使用简单的标准解决方案,无需自定义代码和第3个库。
为了测试,我使用以下命令运行我的实例:
java -jar payara-micro-4.1.1.162.jar --autoBindHttp --deploy my.war
提前谢谢
答案 0 :(得分:1)
由Hazelcast提供支持的持久性EJB定时器即将推出Payara Micro 163,即将发布!