gpt4 book ai didi

java - Spring + MongoDB 自定义查询运行缓慢

转载 作者:行者123 更新时间:2023-12-04 11:43:56 25 4
gpt4 key购买 nike

我有一个约 7000 个文档的 MongoDB 集合(称为“产品”),托管在 Mongo Atlas 共享集群上,看起来有点像这样:

{
identifier: 123,
archived: true,

/* Some other properties.. */
}
尝试以如下方式对上述集合运行简单查询:
mongoTemplate.find(
new Query().addCriteria(Criteria.where("archived").is(false)),
Product.class,
"Products");
导致执行时间非常长,在本地实例和部署 (Heroku) 版本上都为 8~9 秒。但是,当直接从 MongoRepository<> 运行相同的查询时,例如 repository.findByArchived(false) ,查询几乎立即运行(就像在 mongo CLI 中所做的那样)。
我是否错过了一些阻止 mongoTemplate 的额外配置?以更流畅的方式运行查询,如预配置 MongoRepository (例如一些 bson/POJO 编码)?对此的任何帮助将不胜感激!

最佳答案

很难说到底是什么导致了自定义查询的缓慢,但 atlas 提供了几种工具来帮助分析在您的集群上执行的缓慢查询。
Performance Advisor 监控 MongoDB 认为缓慢的查询并建议新索引以提高查询性能。
一定要读一读——
Performance Advisor

关于java - Spring + MongoDB 自定义查询运行缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67739121/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com