这是我第一次提出问题而我问这个问题,因为我正在投影我自己的架构。我想到的是在有状态/无状态EJB3会话Bean + Hibernate之间进行集成,但将可伸缩性视为一个重要问题。因此,我的想法是将Hibernate ORM层集中在某个主机上,并考虑到不断增加的工作量,扩展到负载平衡方法。
据我了解,这种方法是通过基于Glassfish中的群集功能的JNDI查找透明地管理EJB 3 Entity Beans,但是,我想要利用我认为可以使我的项目受益的Hibernate功能。 / p>
所以,我想知道的是:
我不是这种方法的专家,所以我的焦点可能有缺点,因为那样,我要求你们更好地理解。
答案 0 :(得分:1)
JPA / Hibernate与群集没有太大关系。 JPA实体纯粹是本地的,不能远程使用。关于使用JPA进行群集的唯一问题是二级缓存(如果已启用),因为另一个JVM可能会更新缓存中的实体。
故障转移和负载平衡必须在更高级别完成:在服务层或表示层。
我不是这方面的专家,但我发现进行同质部署要容易得多,并且在前面的HTTP负载均衡器的几个盒子上部署完整的应用程序。