1

我有一个关于 JPA/Hibernate 性能的问题。

我们正在构建 Web 应用程序,目标之一是存储问题及其答案。对于这两件事,我们都有类层次结构,并且@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS).

这些问题都引用了他们的答案,每个问题都存储在某个列表中。

我观察到使用萤火虫,当我向列表中添加新问题并使用时,entityManager.merge我需要等待大约一秒钟才能得到响应。我认为等待简单添加请求的响应需要很长时间。

是因为继承策略,还是我不应该使用entityManager.merge并尝试编写自己的查询。

也许性能低是因为我使用的是 sql lite 数据库(sql lite 仅用于测试,在生产中将使用 postgre)?

或者这种性能对于 ORM 解决方案来说是相当标准的。

4

1 回答 1

0

我经常使用 sqlite(有时甚至用于生产),性能有时甚至比传统的客户端服务器连接更好。

也许您应该调试您的应用程序并启用您正在使用的 JPA 提供程序的日志记录,以查看实际上是否应归咎于继承模型。

但是,如果您正确地完成了继承,那么我认为这不是问题。如果您粘贴有关如何声明类的代码,这将有所帮助。

如果这种情况持续存在,我也会查看分析器。

于 2012-08-26T04:42:03.067 回答