2013-05-23 17 views
6

Potrzebuję waszej pomocy w rozwiązaniu tegoMongoDB: Zwiększenie połączeń Max MongoDB

ten jest wynikiem moich ulimit -a na mój serwer linux

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 

Teraz jest to wynikiem mojego MongoDB

db.serverStatus().connections 

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

Chcę zwiększyć liczbę połączeń MongoDb do 10000.

Próbowałem różnych opcji, takich jak w moim mongod1.conf

fork = true 
port = 27017 
maxConns = 10000 

a także to podczas uruchamiania MongoDB

mongod ulimit -n 10000 --config mongod1.conf 

ale nic nie działało i wszystko udało, proszę dać mi znać, jak mogę zwiększyć połączenia do 10000 w moim przypadku, z góry dzięki.

+0

Jaka jest maksymalna dopuszczalna wartość deskryptor pliku w '/ proc/sys/fs/file-max'? Musisz to także podnieść. – Kashyap

+0

Mam zaktualizowane Enteries zgodnie z żądaniem – Kiran

+1

Musisz mieć maksymalne opisy plików ponad 10000, ponieważ procesy w tle używają niektórych z nich. "ulimit -n 25000" powinien to zrobić. – Kashyap

Odpowiedz

4

Potrzebne jest również zwiększenie liczby deskryptorów plików i liczby deskryptorów plików na proces, który pozwala jądro Linux.

W systemie Linux należy to skonfigurować, edytując plik pod numerem /proc/sys/fs/file-max lub przez narzędzie sysctl.

  • Edytuj plik /etc/sysctl.conf i dodaj fs.file-max = 50000. Ustawia maksymalne deskryptory plików, które mogą działać jako ograniczenia systemowe.
  • Uruchamianie ulimit -n 50000 ustawia limit dla użytkownika dla maksymalnej liczby otwartych deskryptorów plików.

Sprawdź ten link do bardziej opisowe write-up do edycji limitów na komputerze z systemem Linux: http://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/

1

Być może trzeba zmienić twardych limitów w /etc/limits.conf lub /etc/security/limits.conf zależności od dystrybucji.

1

Czy próbowałeś:

--maxConns arg  max number of simultaneous connections 

(źródło: mongod dokumentacji)