使用EJB的后台进程

时间:2013-03-01 09:08:55

标签: java-ee ejb threadpool glassfish-3 workmanagers

我正试图弄清楚如何解决我已经介入的设计问题。 让我们假设在我的应用程序中,我需要一种守护进程/服务,它在后台持续工作,管理一个对象池,以使它们可供客户端使用。 特别是这个守护进程负责管理这些对象的整个生命周期。

现在,我没有深入了解这个守护进程范围的细节,而是在思考如何设计这个。 我的第一个想法是依靠WorkManager API。由于我有一个Singleton EJB为我的应用程序核心建模,我们的想法是获得一个WorkManager然后生成守护进程(显然是实现Work)。我在开发资源适配器时使用过WorkManager,我认为我也可以在EJB中使用它,但是我发现Glassfish(3.1.2.2)支持WorkManager API(主要由javax.resource.spi.work提供)在RA背景下,这是不可能的。

我看了一下网络,发现interesting article by Daniel Veselka似乎解决了引入WorkJ的CommonJ实现的问题,我明确地想着遵循这种方法。

您如何看待这个?

1 个答案:

答案 0 :(得分:1)

您还可以使用定期重新安排自定义的定时bean,并发送代表实际工作的JMS消息。它对我们有用。