[MONGODB] MongoDB를이 : MongoDB의에서 최대 연결을 증가
MONGODBMongoDB를이 : MongoDB의에서 최대 연결을 증가
나는이 문제를 해결하는 당신의 도움이 필요합니다
이 내 리눅스 서버 내에서는 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 }
나는 10000 더 MongoDB의 연결을 증가합니다.
내 mongod1.conf처럼 다른 옵션을 시도
fork = true
port = 27017
maxConns = 10000
또한,이 동안은 MongoDB를 시작
mongod ulimit -n 10000 --config mongod1.conf
그러나 아무것도 일하지 모든 실패, 제가 사전에, 내 경우에는 감사를 10000에 대한 연결을 증가시킬 수있는 방법을 알려 주시기 바랍니다.
해결법
-
==============================
1.또한 파일 기술자 및 리눅스 커널이 허용하는 프로세스 당 파일 기술자의 수의 수를 범프 필요가있다.
또한 파일 기술자 및 리눅스 커널이 허용하는 프로세스 당 파일 기술자의 수의 수를 범프 필요가있다.
리눅스에서이 / proc 디렉토리 /에서 sys / FS / 파일 최대에서 또는 sysctl을 유틸리티로 파일을 편집하여 구성해야합니다.
리눅스 시스템에서 한계를 편집하기위한 더 자세한 설명 쓰기 업이 링크를 확인하십시오 : http://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/
-
==============================
2.당신이 시도 유무 :
당신이 시도 유무 :
--maxConns arg max number of simultaneous connections
(출처 : mongod 문서)
-
==============================
3.MongoDB에 들어오는 연결에 제한이없는 것 같다 당신은, 시스템 전체의 제한을 수정하는 공식 문서를 참조한다 :
MongoDB에 들어오는 연결에 제한이없는 것 같다 당신은, 시스템 전체의 제한을 수정하는 공식 문서를 참조한다 :
권장되는 ulimit 설정 (offical 한 문서) :
변경 사항을 적용하도록에서 ulimit 설정을 변경 한 후 mongod와 mongos 인스턴스를 다시 시작해야합니다.
출처: 수 - 중 - 연결 추천-ulimit를-설정
-
==============================
4.방법 1 systemd 사용하는 경우 (systemctl 다시 시작 mongod)
방법 1 systemd 사용하는 경우 (systemctl 다시 시작 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 만약 NO 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를 다시 시작합니다.
-
==============================
5.당신은 /etc/limits.conf 또는 귀하의 분포에 따라는 /etc/security/limits.conf 하드 한계를 변경해야 할 수도 있습니다.
당신은 /etc/limits.conf 또는 귀하의 분포에 따라는 /etc/security/limits.conf 하드 한계를 변경해야 할 수도 있습니다.
from https://stackoverflow.com/questions/16713415/mongodb-increasing-max-connections-in-mongodb by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] MongoDB를 삽입 JSON 파일 (0) | 2020.01.09 |
---|---|
[MONGODB] 그룹이없는 평균 집계 쿼리를 MongoDB를 (0) | 2020.01.09 |
[MONGODB] 배열 요소에 대한 여러 기준을 지정합니다 (0) | 2020.01.09 |
[MONGODB] MongoDB를 - 텍스트 필드 및 텍스트 인덱스에서 인덱스의 차이? (0) | 2020.01.08 |
[MONGODB] 어떻게 pymongo 원격 MongoDB를 연결하는 (0) | 2020.01.07 |