账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    修改mongog默认最大连接数
    23
    0

    1.mongodb sharding cluster默认最大连接数是819,我想调大一些,但是始终没有调整成功。

    [root@ctl1m ~]# mongo mongodb://10.0.1.121:30000
    MongoDB shell version v3.4.9
    connecting to: mongodb://10.0.1.121:30000
    MongoDB server version: 3.4.9
    2018-01-18T18:19:13.270+0800 I CONTROL  [main] 
    mongos> db.serverStatus().connections
    { "current" : 715, "available" : 104, "totalCreated" : 719 }
    

    从上面的结果可以看到最大连接数是819,当available为0时,重新登录就会报错:

    [root@ctl1m ~]# mongo mongodb://10.0.1.121:30000
    MongoDB shell version v3.4.9
    connecting to: mongodb://10.0.1.121:30000
    2018-01-19T10:52:41.277+0800 E QUERY    [thread1] Error: network error while attempting  to run command 'isMaster' on host '10.0.1.121:30000'  :
    connect@src/mongo/shell/mongo.js:237:13
    @(connect):1:6
    exception: connect failed
    

    2.我的修改过程:
    修改/etc/secruity/limits.conf,重启系统查看ulimit -n是16384. 在mongos.conf文件中配置如下:
    net:
    port: 30000
    bindIp: ctl1m # Listen to local interface only, comment to listen on all interfaces.
    maxIncomingConnections: 8000
    然后重启mongos服务,再次查看连接数,db.serverStatus().connections,发现还是819。我的修改有什么问题,您有什么修改方法吗?谢谢

    也尝试用下面的方法启动mongos服务,依然没有效果:
    /usr/bin/mongos --config /etc/mongod/mongos.conf --maxConns=3000

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 在MongoDB中,设置默认的最大连接数(MaxClient Connections)可以通过mongoose.connection.setMaxConnectionCount()方法来实现。这个方法会改变MongoDB的默认最大连接数,而不是全局设置在服务器端。

      以下是一个使用JavaScript和Mongoose的示例:

      ```javascript // 设置默认最大连接数 mongoose.connection.setMaxConnectionCount(10);

      // 使用连接数为10的数据库 mongoose.connect('mongodb://localhost:27017/mydatabase', { useNewUrlParser: true, useUnifiedTopology: true }); ```

      在这个示例中,我们设置了最大连接数为10,这意味着MongoDB将在每次连接时都会检查连接数是否达到或超过这个阈值。如果连接数达到或超过阈值,MongoDB将尝试关闭现有的连接,从而释放资源。如果连接数未达到阈值,MongoDB将继续为这个新的连接创建一个新的数据库连接。

      注意:在生产环境中,为了确保数据安全和高可用性,应避免设置过多的默认最大连接数,因为这可能会导致数据库的资源消耗过多,导致性能下降,甚至可能导致服务崩溃。因此,通常建议设置一个较低的最大连接数,例如5-10,以满足大部分使用场景的需求。例如:

      ```javascript // 设置默认最大连接数为5 mongoose.connection.setMaxConnectionCount(5);

      // 使用连接数为5的数据库 mongoose.connect('mongodb://localhost:27017/mydatabase', { useNewUrlParser: true, useUnifiedTopology: true }); ```

      在实际应用中,根据具体的需求和数据量,可以适当调整最大连接数的值。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部