Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在特定时间执行多个查询时,我的MongoDB CPU使用率将达到100%_Mongodb - Fatal编程技术网

在特定时间执行多个查询时,我的MongoDB CPU使用率将达到100%

在特定时间执行多个查询时,我的MongoDB CPU使用率将达到100%,mongodb,Mongodb,我使用的是MongoDB 3.4,面临一次执行多个请求的问题 例如,如果我在200秒时执行1000个请求,此时MongoDB的CPU使用率将在98-100%左右,此时CPU完全阻塞并返回系统故障 解决这个问题的好方法应该是什么。我使用的副本集运行于: 主要:端口27017 从:端口27018 仲裁人:端口27019 系统配置:Windows 10(4个VCPU、8GB Ram、1 TB硬盘) 任何建议/帮助都将不胜感激。您可能缺少一些适当的索引以减少BSON解析的数量。您还在一台机器上运行三个独

我使用的是MongoDB 3.4,面临一次执行多个请求的问题

例如,如果我在200秒时执行1000个请求,此时MongoDB的CPU使用率将在98-100%左右,此时CPU完全阻塞并返回系统故障

解决这个问题的好方法应该是什么。我使用的副本集运行于:

主要:端口27017

从:端口27018

仲裁人:端口27019

系统配置:Windows 10(4个VCPU、8GB Ram、1 TB硬盘)
任何建议/帮助都将不胜感激。

您可能缺少一些适当的索引以减少BSON解析的数量。您还在一台机器上运行三个独立的
mongod
进程。这不是一个推荐的设置,因为任何合理的工作负载都会由于两个数据承载
mongod
进程之间的资源争用而使机器无法承受。@KevinAdistambha那么,如果我为主进程获取任何数据,那么由于复制,返回响应也需要时间吗???如果是,那么设置的好方法是什么replication@Abhay复制被设计为在不同的主机上运行。一个
mongod
被设计为在一台机器上运行。也就是说,您可以在一台机器内运行多个
mongod
,但一旦工作负载达到合理水平,您就无法期望由于资源争用而获得优异的性能。请记住,辅助服务器所做的工作与主服务器相同,因为它必须快速复制写操作。如果这是一个开发环境,可以运行多个
mongod
来测试副本集设置对应用程序的影响。但是,这不是运行压力测试的正确设置。