我有一个非常标准的 mongo 设置,mongos
在应用服务器上运行,三个mongoc
实例运行,两个分片,mongod
每个分片三个实例。
一切运行良好,但我看到的所有文档都说这mongos
应该是一个相当轻量级的过程。我的情况似乎不是这样。我正在运行一个模拟几个用户发出请求的测试,限制因素似乎是mongos
过程。nginx 和 php-fpm 也在应用服务器上运行,但在测试期间它们只使用了大约 15% 的 CPU。mongos
约为 85%。
我可以添加更多的应用服务器来弥补,但由于mongos
应该更轻量级,我想也许我做错了什么。据我所知,我的所有查询都已编入索引。我在每个集合中使用默认的 MongoIDs 作为分片索引。