您是否在 MongoDB 设置中遇到一些性能问题?
在这种情况下,请按照以下步骤为您的系统提供一些急救,并为长期架构(例如分片)获得一些空间。
第 1 步:启用慢速查询
获取有关系统行为和性能瓶颈的情报。通常慢查询和你的性能瓶颈之间有很高的相关性,所以使用以下方法来启用你的系统分析收集:
db.setProfilingLevel(1, 100);
第 2 步:使用解释
使用 explain 探索有问题的查询。您还可以使用 mtools 分析记录的查询以找到高频查询。
第 3 步:创建索引
您的分析应该产生新的索引以改进查询
不要忘记 在后台使用索引构建 来避免集合锁定和系统停机。
第 4 步:使用 稀疏索引 来减小索引的大小
如果您使用稀疏文档,并在查询中大量使用 $exists 关键字,则使用稀疏索引(仅包括包含您的字段的文档)可以最大限度地减少索引大小,从而提高查询性能。
第 5 步:使用 Secondary Preferred 将查询卸载到从服务器
您可能有一个副本集,如果不使用您的奴隶进行读取查询(尤其是报告和搜索操作),这是一种资源浪费。
通过将您的连接字符串更改为次要首选,您的应用程序将尝试在您的主服务器上执行读取查询之前在从服务器上运行读取查询。
底线
使用这些简单的方法,您可以在撞墙之前获得时间和空间。