我正在研究节点之间的缓存复制解决方案
节点 A - 主节点 => Hibernate + 数据库 + Ehcache 作为二级缓存
Node B - 区域节点=> Ehcache 作为主缓存。no Hibernate
Node B 仅用作查询的附近缓存。
现在我正在更新节点 A 中的数据(比如 SudentInfo),它会被正确地持久化和缓存。在复制端(我使用 JMS)它向节点 B 发送一条消息。但问题是,它发送的消息是实例 CacheEntry(deep Inside Element),没有办法恢复原始对象(StudentInfo)。我在节点 B 中得到的是具有一些学生属性的 CacheEntry,但实际上不是学生对象。
请注意,我不需要节点 B 中的休眠会话/持久性,节点 B 仅用于快速查询,持久性是通过节点 A 完成的。那么有人尝试过这样的解决方案吗?有没有办法将 CacheEntry 转换为实际对象?或告诉 ehcache 复制原始对象而不是 CacheEntry。
谢谢您的帮助