Payara 微型持久计时器

Posted

技术标签:

【中文标题】Payara 微型持久计时器【英文标题】:Payara micro - persistent timer 【发布时间】:2016-08-08 10:40:31 【问题描述】:

是否可以使用 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

提前谢谢你

【问题讨论】:

【参考方案1】:

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

【讨论】:

太好了,谢谢你的信息。到目前为止,我真的很喜欢 payara micro。

以上是关于Payara 微型持久计时器的主要内容,如果未能解决你的问题,请参考以下文章

libevent:使计时器持久化

如何为vertx设置一个持久的计时器,如果服务器重新启动,它不会丢失?

持久的 jQuery 倒计时

EJB3 + JEE6:啥是持久定时器?

单片机

容器持久化存储训练营”启动倒计时!3天攻破K8s难点