首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EJB3,消息驱动bean与有状态会话bean协作?

EJB3,消息驱动bean与有状态会话bean协作?
EN

Stack Overflow用户
提问于 2009-03-11 01:33:49
回答 2查看 2K关注 0票数 1

嘿!我对Java EE和Stackowerflow都比较陌生,请注意:-)

我有一堆设备触发Java消息,以便在任何状态改变时发送。这些设备通常在大约30-90分钟的间隔内活动。除了事件细节之外,每个事件消息还包含设备id。

我的应用程序的中心是一个订阅这些事件的消息驱动bean。每次我得到一个事件,我必须访问数据库来查找一些关于设备的信息。

如果我可以将有状态会话bean与每个活动设备关联起来,那就太棒了!如果这是一个web应用程序,我会使用http会话来存储有状态bean的句柄或引用(对吧?)。有没有什么方法可以从我的消息bean中将其存档?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-03-11 03:54:05

这将是很好的,只是它不能像你解释的那样做。MDB(和SLSB)根据定义是无状态的,因此只在调用期间保存会话是安全的。

您最终可以打破规范,在某个地方(可能是在MDB本身)创建一个静态属性,但这肯定是不可移植的,也是不可伸缩的。

我的建议是在JPA级别启用缓存(有关详细信息,请参阅您首选的持久性提供者),这样您就可以非常快地(真的很快)地查找所需的任何数据。这是可移植的,并且对集群友好。这是我在我的项目中使用的方法,我对此非常满意。

希望能有所帮助。

票数 2
EN

Stack Overflow用户

发布于 2009-03-18 15:21:48

我不太愿意推荐特定的产品,但是Terracotta服务器不是这样的吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/632990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档