我想弄清楚如何解決我已經涉足的設計問題。 我們假設在我的應用程序中,我需要一種守護進程/服務,它可以在後臺管理對象池中繼續工作,以使它們可供客戶端使用。 特別是這個守護進程負責管理這些對象的整個生命週期。使用EJB的後臺進程
現在,我沒有深入瞭解這個守護進程的細節,我在想如何設計它。 我的第一個想法是依靠WorkManager
API。因爲我有一個Singleton EJB建模我的應用程序核心,所以想要得到一個WorkManager
,然後產生守護進程(顯然實現Work
)。我在開發資源適配器時使用過WorkManager,我想我也可以在EJB中使用它,但對WorkManager
API(基本上由javax.resource.spi.work
提供)支持Glassfish(3.1.2.2)支持,我發現在RA上下文中這是不可能。
我看了看網頁,發現一個interesting article by Daniel Veselka似乎接近介紹WorkManager的CommonJ實現的問題,並且我明確地考慮了遵循這種方法。
您對此有何看法?
遵循定時bean方法Quartz Scheduler也是一個不錯的選擇,對嗎? – fabpicca 2013-03-01 09:57:47
我對Quartz沒有個人經驗,但是可以。或者產生一個線程的舊的ServletContextListener。 – ewernli 2013-03-01 10:05:53