很多时候,有些慢查询导致MongoDB压力很大, 花了点时间写了个脚本循环kill些慢查询操作.
1.2.var j=0;
3.
•var _DEF_TIME=10; //设置慢查询时间
•for (var i in db.currentOP().inprog) { • var op = ""; • var opid;
• var memProg={}
• if (typeof(undefined) == typeof(db.currentOP().inprog[i])) { • continue; • }
• memProg=db.currentOP().inprog[i];
• op = memProg.op;
• opid = memProg.opid;
• print(i);
• if (op=="query") { • if (memProg.hasOwnProperty('secs_running')) { • var useTime = memProg.secs_running;
• if (useTime >= _DEF_TIME) { • db.killOp(opid);
• j++;
• print("killed "+j+" Query Operation!"); • }
• }
• }
•}
运行方式:
1../mongo 10.15.107.154:30000 < ./Self-Script/killSlow.js
本文出自:亿恩科技【www.enkj.com】
服务器租用/服务器托管中国五强!虚拟主机域名注册顶级提供商!15年品质保障!--亿恩科技[ENKJ.COM]
|