【发布时间】:2018-04-24 13:01:50
【问题描述】:
我有一个应用程序部署在 WebSphere 8.5 和 Java 1.7.1 上,定义了一个由 2 个节点组成的集群。 在这个应用程序中有一个 EJB,它通过工作管理器提交一个异步作业。
问题是在 WAS 8.5 上,Job 在集群的两个节点上执行了两次。在 WAS 6.1 中,这并没有发生。
工作由报警管理员提交。下面提取的代码:
WorkManager wm = serviceLocator.getWorkManager("NameOfCustomWorkManager");
AsynchScope scope = wm.findAsynchScope("scopeName");
if (scope == null)
scope = wm.createAsynchScope("scopeName");
AlarmManager alarmManager = scope.getAlarmManager();
alarmManager.create(listener, "Alarm Context Info", (int) (DateUtils.getNextTime(nextTime) - System.currentTimeMillis())); --Fired on a certain hours
logger.info("Alarm fired.");
有人知道如果是 8.5 是否有额外的配置来避免所描述的问题?
【问题讨论】:
标签: asynchronous websphere ejb-3.0 workmanagers