配置 Enterprise JavaBeans 计时器服务
对于非持久性 EJB 计时器,可配置 EJB 计时器服务以控制计时器的重试时间间隔以及针对超时回调方法调用失败的重试次数。
关于此任务
EJB 计时器服务会以每 5 分钟一次的频率对非持久性计时器重试超时回调方法的失败调用,直到超时回调方法成功完成。使用以下选项来配置非持久性计时器。
- 最大重试次数
指定可重试失败超时回调方法的最大次数。如果超时回调方法在重试时成功,那么服务器将停止尝试运行该方法。如果重试失败,那么服务器将继续尝试,直到超时回调方法成功或达到重试限制。在达到重试限制后,服务器不会尝试运行超时回调方法,即使先前尝试未成功也是如此。缺省值 -1 表示重试次数无限制。值 0 表示不进行重试,它不符合规范。值 1 或更大的值表示允许进行重试的特定次数。
对于不需要非持久性计时器在每个安排时间完成的应用程序,更改针对非持久性计时器重试超时回调方法的次数的配置很有用。例如,如果应用程序创建的非持久性时间间隔计时器调度为每 5 分钟运行一次,那么将重试次数配置为 0 会导致该计时器每 5 分钟运行一次,而与它的运行是否成功无关。
- 重试时间间隔
指定失败超时回调方法的重试时间间隔。第一次重试始终立即进行,无论对此值配置的时间间隔如何都是如此。所有其他重试等待针对此值指定的时间间隔。值 0 表示立即进行所有重试。值 1 或更高的值指示重试必须等待该特定秒数。缺省值为 300 秒。
使用较小的重试时间间隔时,对于超时回调方法在调度时间前完成很重要的应用程序,对非持久性计时器配置另一重试时间间隔很有用。此方法也适用于可接受将计时器完成延迟至稍晚时间(例如,使用较长重试时间间隔时)以启用超时回调方法的应用程序,以使应用程序有更好的机会成功运行。