共计 771 个字符,预计需要花费 2 分钟才能阅读完成。
mongo flowcontrol
- mongo 正本集部署时,mongo 写入默认写入 majority。如果从节点落后太多或者有挂掉的正本,呈现如果数量达不到正本集数据的一半以上(majority),mongo 会被动的呈现 flowcontrol 的流量管制。
-
查看集群的 flowControl 配置
db.admin.runCommand(getParameters: “*”); // 获取 mongodb 所有的配置参数。mongo status"flowControlDecayConstant" : 0.5, "flowControlFudgeFactor" : 0.95, "flowControlMaxSamples" : 1000000, "flowControlMinTicketsPerSecond" : 100, // 最终影响速度的参数,每秒最低 100 张 tickret "flowControlSamplePeriod" : 1000, "flowControlTargetLagSeconds" : 10, "flowControlThresholdLagPercentage" : 0.5, "flowControlTicketAdderConstant" : 1000, "flowControlTicketMultiplierConstant" : 1.05, "flowControlWarnThresholdSeconds" : 10,
- flowcontrol 的慢日志模式
- mongo 仲裁节点部署破绽
线上为了节约服务器资源,采取的一主一从一仲裁的办法部署正本集,因为 mongo 的从节点内存过大,被内核杀掉,导致了集群只剩下了主节点和仲裁节点。因为仲裁节点只参加投票。导致集群的写入只有一个节点(主节点)。小于 majority(2)。导致整个集群呈现 flowcontrol。重大影响 mongo 服务的性能。
正文完