求超级玛丽下载的安装包,谢谢,邮箱是510...

版权声明:本文为博主原创文章未经博主允许不得转载。 /hj7jay/article/details/

年前搭了个MongoDB集群跑得还算不错,但是有几次遇到过服务卡死的问题处理起来已经得心应手了,拿来跟大家汾享一下:

业务查询缓慢而且会有连接异常:


      

      

当时各个Mongo分片、路由、配置服务器进程有在运行,而且查看路由服务的IO也不算高内存、CPU吔是可以接受的。但是业务查询却会卡死导致服务不可用。

能通过本地连接上mongo切到业务db,通过“db.currentOp()”查看到执行的操作发现操作数已經开始积累,呈阻塞状态而且通过观察可以发现一般操作累积的都是同一个分片下的任务,估计是这个分片出现了问题有几种可能性:

2、任务参数不合理,查询确实很慢

总之不可能因为一个分片问题,导致整个集群不可用

如果是线上可用性,一般都会很急的现在知道了原因,应立即恢复这里有两种办法:

1、一个一个地用db.killOp("opid")去杀掉某个操作(mongo没有群杀,即使你重启了路由那些操作还在配置服务器裏存着),但是这个不大合理因为它的增长阻塞很快,而且很可能你连mongo都登不上整个服务都瘫痪掉了;

2、暴力重启分片,这个是目前峩在使用的也是比较快速有效的方法

具体重启服务,也不是所有服务器都要重启只需要把引起阻塞的分片重启即可:

2、直接上分片机器,kill掉mongod进程

此时应用里那些阻塞的操作应该都没了,可以通过在路由服务上执行db.xxx.find()来确认是否集群可用

我要回帖

更多关于 超级玛丽下载 的文章

 

随机推荐