Увеличить максимальное количество подключений под Ubuntu? (Тест параллельности Tsung) - PullRequest
1 голос
/ 05 января 2011

Я тестирую NodeJ, особенно параллелизм.Я использую Tsung для этого.К сожалению, Цунг, кажется, не сможет породить достаточно пользователей.Я получаю только около 30K одновременных подключений, хотя ~ 2GB RAM все еще не используется.( Проверьте графики )

Файл XML-Config выглядит следующим образом:

<tsung loglevel="notice" version="1.0">
<!-- Client side setup -->
−
<clients>
<client host="localhost" use_controller_vm="false"/>
<client host="localhost" use_controller_vm="false"/>
</clients>
<!-- Server side setup -->
−
<servers>
<server host="localhost" port="8000" type="tcp"/>
</servers>
−
<!--
 to start os monitoring (cpu, network, memory). Use an erlang
  agent on the remote machine or SNMP. erlang is the default 
-->
−
<monitoring>
<monitor host="localhost" type="erlang"/>
</monitoring>
−
<load>
−    
<arrivalphase phase="1" duration="50" unit="minute">
<users interarrival="0.000000001" unit="second"/>
</arrivalphase>
</load>
−
<sessions>
−
<session name="nodeJS" probability="100" type="ts_http">
−
<for from="0" to="40" incr="1" var="counter">
−
<request>
<http url="http://localhost:8000/" version="1.1" method="GET"/>
</request>
<thinktime random="false" value="300"/>
</for>
</session>
</sessions>
</tsung>

Так как увеличить пользователей, чтобы использовать всю оперативную память???

Ответы [ 2 ]

3 голосов
/ 08 января 2011

Я решил проблему !!!Мне просто нужно было увеличить диапазон портов.С 4 ГБ ОЗУ я достигаю максимально возможного диапазона портовРовно 61980 одновременных подключений.Великий NodeJs!

0 голосов
/ 05 января 2011

В зависимости от архитектуры вашего процессора, узел может поддерживать только 1 ГБ ОЗУ: http://code.google.com/p/v8/issues/detail?id=847

Чтобы обойти это, вы можете запустить несколько экземпляров узла (и, если нужно, заставить их общаться друг с другом).Библиотеки, такие как многоузловые, могут помочь с этим: https://github.com/kriszyp/multi-node

В противном случае вам нужно будет настроить свой сервер для большого количества длительных соединений - вне моего опыта, но многие думают об этом.Вот ветка из группы Google nodejs о поддержке 100 тыс. Соединений: https://groups.google.com/d/topic/nodejs/0Z34PH_R88o/discussion

...