当前位置: 首页 > 知识库问答 >
问题:

mongodb:增加mongodb中的最大连接数

庄兴发
2023-03-14

我需要你帮忙解决这个问题

这是我在linux服务器上的ulimit-a的结果

   core file size          (blocks, -c) 0
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 10000
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 24576
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

现在这是我的MongoDB的结果

db.serverStatus().connections

{ "current" : 4, "available" : 5996 }

我想将MongoDb连接增加到10000个。

我尝试过不同的选择,比如我的mongod1。形态

fork    = true
port    = 27017
maxConns = 10000

这也是在启动mongodb的时候

mongod ulimit -n 10000  --config mongod1.conf 

但是什么都没用,都失败了,请让我知道如何在我的情况下将连接数增加到10000,提前谢谢。

共有3个答案

薄兴昌
2023-03-14

你试过:

--maxConns arg       max number of simultaneous connections

(来源:mon神留档)

阎慈
2023-03-14

方法1如果使用systemd(systemctl restart mongod)

sudo mkdir /etc/systemd/system/mongod.service.d/
sudo vi /etc/systemd/system/mongod.service.d/limits.conf

然后添加:

[Service]
LimitFSIZE=infinity
LimitCPU=infinity
LimitAS=infinity
LimitMEMLOCK=infinity
LimitNOFILE=64000
LimitNPROC=64000

然后执行:

systemctl daemon-reload
systemctl restart mongod

方法2如果没有systemd(服务mongod重启)

sudo vi /etc/security/limits.d/99-mongodb.conf

添加如下内容:

*       -       nproc   64000
*       -       nofile  64000
*       -       fsize   unlimited
*       -       cpu     unlimited
*       -       memlock unlimited
*       -       as      unlimited
*       -       rss     unlimited

注意,它是一个通配符。但您可以使用特定的用户或组。然后重新启动会话和mongod。

金瑞
2023-03-14

您还需要增加文件描述符的数量以及Linux内核允许的每个进程的文件描述符数量。

Linux,这应该通过在/proc/sys/fs/file-max处编辑文件或通过sysctl实用程序进行配置。

  • 编辑/etc/sysctl。conf文件并添加fs。文件最大值=50000。这将设置可以作为系统范围限制运行的最大文件描述符

检查此链接以获得更具描述性的编写,用于编辑linux机器上的限制:http://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/

 类似资料:
  • 我目前正在使用docker-compose运行MongoDB和Mongo Express。当我在Express上查看时,它显示我只有815个可用连接。如何增加这个?我尝试在docker-compose文件中添加“命令:maxConns 2000”,但没有影响。我相信MongoDB不会限制连接数,所以我假设这是一个限制使用docker-compose? 版本:“2” 服务: mongo:映像:mon

  • 我面临mongo DB连接问题。 我成功地将tMongo组件导入我的Talend Open Studio 5.1.1,并复制了mongo 1.3。jar文件到lib/java文件夹,我的Mongo DB作业正在成功运行,但问题是,即使我为mongoDB提供了一些假服务器路径(IP)和假端口,我的作业运行时没有出现错误,它给了我一行没有数据的数据。正确的IP和端口也是如此。 我如何解决它。

  • MongoDB是一种文档导向数据库管理系统,由C++撰写而成。 本章节我们将为大家介绍如何使用 Node.js 来连接 MongoDB,并对数据库进行操作。 如果你还没有 MongoDB 的基本知识,可以参考我们的教程:MongoDB 教程。 安装驱动 本教程使用了淘宝定制的 cnpm 命令进行安装: $ cnpm install mongodb 接下来我们来实现增删改查功能。 创建数据库 要

  • 本文向大家介绍java连接Mongodb实现增删改查,包括了java连接Mongodb实现增删改查的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了java连接Mongodb实现增删改查的具体代码,供大家参考,具体内容如下 1.创建maven项目 2.编写代码 1.查询所有 2.添加数据 3.删除 4.修改 5.条件查询 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多

  • 我得到com.mongodb.MongoWaitQueueFullExc0019。Mongo版本-4.2,Spring Data MongoDB版本-3.6 如何增加泳池大小?将增加池大小将为我工作,目前,我在docker容器内的单个节点上运行mongo。 例外情况:- org.springframework.data.mongodb.UnzzizedMongoDb异常:太多的线程已经在等待连接。

  • 我正在从事一个Java/vertx项目,其后端是MongoDB(从一段时间以来,我一直使用Elixir/Erlang,我对vertx很陌生,但我认为它最适合)。基本上,我有一个由一些HttpServerVerticles处理的http API,它们需要将数据存储到mongo db(或从中检索数据),并向API调用方发送适当的回复。我正在寻找正确的模式来实现查询和处理回复。 从官方指南和一些教程中,