我们目前正在设计 web 项目,我们必须使用 java 堆栈。
首先,考虑到负载有限,我们可以使用单个数据库(在我们的例子中是 PostgreSQL)。在这种情况下,像 Hibernate 这样的 ORM 将是一个不错的决定,因为我们知道对象/关系问题始终是最耗费时间和成本的问题之一。这就是使用 ORM 工具的全部原因 - 便宜,节省大量时间。
但问题在于,我们期望稍后在数据库层进行分片和主/从(读/写)复制,这对于 ORM 来说是一个真正的问题(至少据我所知)。
如果我错了,请纠正我,我们可以使用一个很好的 Java 堆栈 ORM 工具。
根据链接,我知道有一个名为Hibernate Shards的项目可以解决这个问题,但它从未通过 beta 版本,并且它的开发在 2007 年停止。
使用带有分布式二级缓存的常规 Hibernate,我们可以使用节点数
有业务逻辑,但这并不能解决数据库可扩展性的问题,我们仍然可以只为应用程序使用一个数据库。
底线:是否有适合我们案例的开源/免费 ORM(Java 堆栈),或者我们是否应该自己实现它,即使成本很高,以便在以后提供数据库可扩展性和可能的其他好处。
谢谢!