我正在构建一个简单的消息委托应用程序。消息通过 JMS 在两端发送。我正在使用 MDB 来处理传入消息、转换它们并将它们发送到目标队列。不幸的是,相同的消息可以多次发送到传入队列,但不允许转发重复项。
那么实现这一目标的最佳方法是什么?
由于可以有多个 MDB 监听传入队列,因此需要一个缓存,我可以将传入消息的唯一消息 uuid 存储至少一个小时。应该如何访问这个缓存?通过单例/静态类(我正在运行 Java EE 5,因此没有单例注释)?
另外我觉得所有的操作都必须同步,对吧?这会不会对性能造成太大影响?