我们的设计有一个 jvm,它是一个 jboss/webapp(读/写),用于通过休眠(使用 jpa)将数据维护到数据库。该模型有 10-15 个持久类,关系深度为 3-5 级。
然后我们有一个单独的 jvm,它是使用这些数据的服务器。由于它连续运行,我们只有一个长的数据库会话(只读)。
当前不涉及 jvm 内缓存 - 因此我们手动从另一个 jvm 发出信号。
现在,当 webapp 更改某些数据时,它会向服务器发出信号以重新加载更改的数据。我们发现我们需要告诉 hibernate 清除数据然后重新加载它。仅对数据库进行获取/合并并不能完成这项工作 - 主要是针对层次结构下几层的对象。
关于此设计是否存在根本性错误的任何想法,或者是否有人正在这样做并且在重新加载时使用 hibernate 有更好的运气。
谢谢,克里斯