当我停止辅助数据库时,MongoDB 分片副本集过载

当我停止辅助数据库时,MongoDB 分片副本集过载

我有一个 MongoDB Sharding,包含 8 个服务器和 4 个副本集。每个副本集都有主副本集、次副本集和仲裁副本集。

分布如下:

- RS01 -> Server1A (primary), Server1B (secondary)
- RS02 -> Server2A (primary), Server2B (secondary)
- RS03 -> Server3A (primary), Server3B (secondary)
- RS04 -> Server4A (primary), Server4B (secondary)

仲裁器和配置服务器分布在不同的服务器上。(例如,RS01 的仲裁器位于 Server2B 上)。

我的问题是,例如,当我停止 Server1B(辅助服务器)上的服务时,Server1A 会在几分钟内超载,并且服务会失败。

我的 mongodb 有大约 10 亿个文档,流量非常大。但在正常情况下,负载不会超过 4 或 5。因此,通常情况下,它工作正常,除非副本集的单个成员发生故障。

我的mongodb-server版本是3.4.13,在Debian Jessie下运行,使用Pecl Mongodb版本mongodb 1.4.3从php连接到mongos。

可能是什么问题?有什么想法吗?

提前致谢。

相关内容