EJB3 + JEE6:什么是持久计时器?

2024-02-14

我即将使用新的 EJB3 TimerService(作为 Java EE 6 的一部分),并且像往常一样,JavaDoc 的简洁性给我留下了深刻的印象:)

你知道它的作用是什么吗persistent的财产TimerConfig object?

JavaDoc 定时器配置 http://java.sun.com/javaee/6/docs/api/javax/ejb/TimerConfig.html says: 持久属性确定相应计时器的生命周期是否跨越创建它的 JVM。它是可选的,默认为 true。


持久属性意味着容器需要将计时器状态持久保存到数据库中。如果您需要保证即使服务器脱机(故意或崩溃)计时器也会触发,这一点很重要。当服务器重新上线时,需要执行错过的计时器。将计时器设置为持久性还会产生副作用,即确保计时器仅在一台服务器 JVM 中执行(但不一定是创建它的服务器),无论这对您的产品意味着什么。例如,在集群服务器环境中,这通常意味着即使 EJB 模块在 3 个 JVM 上运行,也只有一个 JVM 会执行计时器。

persist=true 是 EJB 3.1 之前唯一可用的选项。某些计时器操作不够重要,不足以保证这种级别的可靠性,因此添加了该选项以允许非持久计时器。将计时器设置为非持久性还会产生副作用,即确保它在创建它的 JVM 中运行。这对于更新内存缓存或静态 HTML 非常有用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

EJB3 + JEE6:什么是持久计时器? 的相关文章

  • Android:在调用函数之前实现 1 秒间隔定时器

    我试图在重置游戏 resetGame 之前引入 1 秒暂停 按下按钮后 bAnswer1 文本等于 ansewrArray 0 应用程序强制在 newQuestionTimer 中设置的 1 秒延迟后关闭 import java util
  • System.currentTimeMillis 的长度

    Does System currentTimeMillis始终返回固定长度的值 在我的 Windows Core2 中 它返回一个 13 位长的值 从它的 API 来看 返回当前时间 以毫秒为单位 请注意 虽然返回值的时间单位是毫秒 但该值
  • 定时器在待机模式下会发生什么情况? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 当 Activity 不在前面时,暂停 Android 中的 CountDownTimer

    我有一个使用从 10 开始倒数的 CountDownTimer 的活动 当该活动不再处于焦点时 例如用户接到电话或其他情况 如何暂停该计时器 然后在用户返回时恢复计时器活动 这可能吗 我会向 onTick 处理程序添加一些内容 以保存类中计
  • C# 中的计时器初始化和竞争条件?

    我在里希特的书中看到了这段代码 下面的代码演示了如何进行线程池线程调用 该方法立即启动 然后每 2 秒启动一次 1 internal static class TimerDemo 2 3 private static Timer s tim
  • Android:定时器/延迟替代方案

    我想让一个图像在 60 毫秒内可见 然后不可见 然后我想让另一个图像执行相同的操作 等等 我认为我没有正确使用计时器 因为当我运行该应用程序时 两个图像会同时打开 并且当我按下使用此功能的按钮时 两个图像不会消失 这是一些示例代码 time
  • Processing.js 定时器

    我正在使用Processing js 开发一个应用程序 在绘图循环的每一步 我都会将帧数增加一frame 我想知道已经过去了多少时间 目前为了获取时间 知道我的应用程序设置为以 60FPS 运行 我确实这样做 time frame 60 但
  • Java持久化问题

    我试图通过 GlassFish 在 EJB 中使用 JPA 来启动并运行一个简单的示例 我有以下内容persistence xml
  • 部署Java EE应用程序后执行任务

    我有一个 Java EE 应用程序 它应该在部署后启动与外部系统的同步过程 我怎样才能实现这个要求呢 下面列出了在 JavaEE 应用程序中获取生命周期回调的几种流行方法 创建 javax servlet ServletContextLis
  • C# - System.Timers.Timer 的替代方案,在特定时间调用函数

    我想在特定时间调用 C 应用程序上的特定函数 起初我考虑使用Timer System Time Timer 但很快就变得无法使用 为什么 简单的 Timer 类需要一个Interval以毫秒为单位 但考虑到我可能希望执行该函数 假设在一周内
  • Clock_nanosleep() 尚不支持 CLOCK_MONOTONIC_RAW。这该如何处理呢?

    现在clock nanosleepDebian Jessie 上的 CLOCK MONOTONIC RAW 返回 EOPNOTSUPP 如何解决该问题并补偿可能应用于计时器循环中的 CLOCK MONOTONIC 的 NTP 调整 Is c
  • 如何在 CDI 中动态创建实例

    假设我有一个汽车课程 在我的代码中我想创建 10 辆汽车 汽车类有一些 Inject带注释的依赖项 做到这一点的最佳方法是什么 CDI 有一个Provider我可以用它来创建汽车的界面 Inject Provider
  • 如何测量脚本的执行时间? [复制]

    这个问题在这里已经有答案了 如何测量脚本从开始运行到结束所需的时间 start timing CODE end timing EDIT 2011 年 1 月 这是最佳的可用解决方案 其他解决方案 例如performance now 现在应该
  • Enterprise Java Bean 到底是什么?

    Tomcat FAQ 上说 Tomcat 不是 EJB 服务器 Tomcat 不是完整的 J2EE 服务器 但如果我 使用 Spring 提供应用程序上下文 使用 JPA 注释我的实体 注释 并使用 Hibernate 作为 JPA 提供商
  • Android 计时器/计时器任务导致我的应用程序崩溃?

    只是在我的 mainActivity 的 onCreate 中测试一个简单的代码块 Timer timer2 new Timer TimerTask testing new TimerTask public void run Toast m
  • 如何从 Richfaces 弹出窗口刷新父 jsf 页面

    我有一个包含几个字段的 JSF 页面 我跟着这个tutorial http balusc blogspot com 2011 01 jsf 20 tutorial with eclipse and html来自 BalusC 一切都很好 然
  • 在 Transport.send(message) 上获取 ParseException

    由于某种原因 当我在 MimeMessage 上调用 Transport send 时 出现 javax mail internet ParseException 以前 当它只是一封纯文本电子邮件时 这是有效的 但是当我将其更改为同时包含文
  • 错误:类型 typeof Observable 上不存在属性计时器

    代码如下 import Component from angular2 core import Observable from rxjs Rx Component selector my app template Ticks every s
  • 如何使用 Python 3 正确显示倒计时日期

    我正在尝试获取将显示的倒计时 基本上就像一个世界末日时钟哈哈 有人可以帮忙吗 import os import sys import time import datetime def timer endTime datetime datet
  • Weld 中的 JavaEE CDI:通用事件?

    我有一个基于泛型的特定事件处理的想法 但似乎 Weld 无法处理它们 我询问了 google 但找不到替代的 CDI 扩展 Question 是否有 CDI 扩展可以处理通用类型事件的事件传播 下面是我遇到的明确问题 我有三个常规事件 En

随机推荐