《Mongos readWrite权限的账号 看不到绑定db上的collection》情况分析
观察连接数是否有波峰,如果有的话,第一确定连接池有启用,第二尝试min pool size改大以适应系统对连接的需求。
看其脉冲情况方法:收集某段时间内的连接数,以时间为X轴,连接数为Y轴,绘制如下图(因没有合适的场景,以此图只是方便示列,此图属正常现象。小编在16年年底,mongo勒索事件那会,在临时上了权限情况下处理亿数据量级别时,呈尖脉冲波,cpu跟着飙升,mongo权限bug频出)。
还有认证过程会访问/dev/urandom获取随机数,如果每秒上千个,cpu会成为瓶颈,系统吞吐极低,因随机数源的瓶颈造成卡顿,日志疯狂报:
I COMMAND [conn1147500] command local.$cmd command: saslStart { saslStart: 1, mechanism: "SCRAM-SHA-1", payload: BinData(0, 6E2C2C6E3D5F5F73797374656D2C723D75386275584E7632483739566E614B72454832686B55464D7176355933452B77) } ntoreturn:1 keyUpdates:0 writeConflicts:0 numYields:0 reslen:179 locks:{} 117ms