mongo 自动创建索引导致应用连接超时

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongo 自动创建索引导致应用连接超时相关的知识,希望对你有一定的参考价值。

2016年10月16日一个周末的时光遇到了一个很是让人恼火的问题!tomcat总是抛出连接超时问题错误,让人甚是恼火啊!!!

    报错信息如下:

[2016-10-15 18:30:58] 113578459   INFO - ————— PermissionsInterceptor ————— - 登录人pin————————WUJIE
十月 15, 2016 6:30:58 下午 com.mongodb.DBApiLayer$Result killCursor
警告: can‘t clean 1 cursor
com.mongodb.DBPortPool$SemaphoresOut: Out of semaphores to get db connection
        at com.mongodb.DBPortPool.get(DBPortPool.java:193)
        at com.mongodb.DBTCPConnector$MyPort.get(DBTCPConnector.java:408)
        at com.mongodb.DBTCPConnector.say(DBTCPConnector.java:177)
        at com.mongodb.DBApiLayer.killCursors(DBApiLayer.java:181)
        at com.mongodb.DBApiLayer$Result.killCursor(DBApiLayer.java:490)
        at com.mongodb.DBApiLayer$Result.init(DBApiLayer.java:378)
        at com.mongodb.DBApiLayer$Result.<init>(DBApiLayer.java:359)
        at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:298)
        at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:274)
        at com.mongodb.DBCursor._check(DBCursor.java:368)
        at com.mongodb.DBCursor._hasNext(DBCursor.java:459)
        at com.mongodb.DBCursor.hasNext(DBCursor.java:484)
        at com.jlj.erp.dao.follow.impl.FollowDaoImpl.queryOrderByTime(FollowDaoImpl.java:100)
        at com.jlj.erp.manager.follow.impl.FollowManagerImpl.queryOrderByTime(FollowManagerImpl.java:19)
        at com.jlj.erp.service.follow.impl.FollowServiceImpl.queryFollowByCode(FollowServiceImpl.java:252)
        at com.jlj.erp.web.follow.FollowAction.queryFollowByCode(FollowAction.java:160)
        at sun.reflect.GeneratedMethodAccessor292.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:450)
        at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:289)
        at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:252)
        at com.jlj.erp.web.interceptor.AttackInterceptor.intercept(AttackInterceptor.java:17)
        at com.opensymphony.xwork2.De

问题原因大概是这样的:

    技术分享

技术分享

上面这个False的意思就是要阻塞所有后面的请求;


技术分享

改成True就是异步的了,不需要等待了,这样纠结了上述问题!

本文出自 “精忠报国” 博客,请务必保留此出处http://xinsir.blog.51cto.com/5038915/1862705

以上是关于mongo 自动创建索引导致应用连接超时的主要内容,如果未能解决你的问题,请参考以下文章

mongo 正在使用键/值 null 自动创建索引

节点 JS 发布请求导致 Heroku 严重错误请求超时 (503)

mongo分片丢失分片索引

mongoose index

mongo索引

python实现mongo自动添加地图索引, 自动修正遇到的问题