【发布时间】:2019-08-20 09:37:38
【问题描述】:
我正在使用 PagingAndSortingRepository 进行分页。 只需少量数据,一切正常。
当我有超过 1000 个条目的较大数据集时,我在加载 first 页面时会遇到性能问题。 所有其他页面的加载速度都快了很多(请求顺序对性能没有任何影响)。
我的存储库如下所示:
@Repository
@Transactional(readOnly = true)
public interface MyRepository extends PagingAndSortingRepository<MyObject, Integer>, JpaSpecificationExecutor<MyObject> {
}
我这样称呼它:
Specifications<MyObject> filter= getMyFilter();
Pageable pageable = PageRequest.of(page, size, sort);
Page<MyObject> page = this.myRepository.findAll(filter, pageable);
我的第一个假设是,对于第 1 页,会生成一些昂贵的 sql 查询。但是第 1 页和第 2 页的语句之间没有太大区别。 他们也都在数数。我最初认为这可能是原因。
我猜问题出在存储库中。 有人遇到同样的问题吗?
【问题讨论】:
标签: spring-boot spring-data-jpa