您的位置:首页 > 博客中心 > 数据库 >

[Java Performance] 数据库性能最佳实践 - JPA缓存

时间:2022-03-14 01:23

  • JPA的二级缓存会自动地为应用缓存对象。
  • 二级缓存不会保存查询(JPQL)的返回对象,所以当需要缓存对象时,不要使用查询。(或者开启查询缓存)
  • 谨慎使用结合了JOIN FETCH的查询,除非使用的JPA实现支持查询缓存。因为默认情况下,查询会跳过二级缓存。
  • JPA只读实体(JPA Read-Only Entities)

    尽管JPA规范并没有介绍只读实体,但是在很多JPA实现中,都会这种实体作出相应的优化。 对只读实体的操作在性能上一般都会优于读写实体(Read-Write Entities)。因为对于只读实体,不需要保存它的状态,不需要将它放在事务中,也不需要对它进行加锁。

    在Java EE容器中,无论使用的什么JPA实现,只读实体一般都会被支持。应用服务器会保证对这些实体的获取是通过一个特殊的非事务性的JDBC连接来完成。这样做通常都有更好的性能。

    热门排行

    今日推荐

    热门手游