2015-07-25 1 views
-1

Как настроить соединение пула mongodb для поддержки 1100 потоков в секунду?Как настроить mongodb для поддержки 1100 потоков?

Я пробовал некоторые конфигурации, например, без проблем.

connectionsPerHost = 200 
threadsAllowedToBlockForConnectionMultiplier = 5 

Может кто-нибудь мне помочь?

Спасибо.

+0

Вы уверены, что ваш компьютер даже выживет? – Sammaye

+0

Думаю, да, потому что мой computador хорошо работает с 900 потоками. –

+0

Каковы ваши конкретные версии драйвера и сервера Java MongoDB? – Stennie

ответ

1

Это не так.

Это число потоков может быть предвзятым, существует множество методов для расчета идеального числа, и ни один из них не приближается к 1100. Если вы хотите посетить большое количество пользователей, вы должны работать с сервером избыточность. Вы не получите скорость, потому что 99,9% (на самом деле) ваших потоков будут заблокированы, ожидая появления ресурса.

Я работал с java в быстрой обработке, используя распределенные системы и потоки, мы использовали 0mq (альтернатива tcp) для обмена сообщениями и более широкого использования потоков, но мы обнаружили, что умеренное количество потоков было идеальным (если я правильно помню, 12).

Вместо того, чтобы позволить сотням нитей выполнять эту работу, старайтесь поддерживать ограниченное число рабочих потоков, в любом случае у вас не будет больше ресурсов. Идеальным для такого типа приложений будет множество серверов, посещающих ваших пользователей.