2016-07-12 1 views
0

Недавно я тестировал Apache Tomcat. Я использую Ubuntu-16.04 и Apache Tomcat/8.0.36. Я возился с server.xml с лимитом подключения. Я пытался ограничить его двумя одновременными соединениями. Но установка maxThreads = "2" не работает на мое ожидание. Я тестировал:Как я могу ограничить одновременную связь Tomcats?

ab -n 150 -c 150 http://127.0.0.1:8080/ 

Но это просто действует, не закрывая никакого соединения.

ответ

1

Прежде всего, вам нужно понять разницу между maxThreads и maxConnections. Вы можете найти оба этих параметра в server.xml. Обычно Tomcat работает в 2-х режимах -

1. one thread one connection 
2. one thread many connections 

Я считаю, что вы используете Tomcat 8, который использует второй режим (может быть настраиваемым). Поэтому при настройке maxThreads = 2 вы не устанавливаете соединения, а ограничиваете потоки, которые Tomcat разрешил создавать.

Еще одна вещь: вы можете установить параметр keepAlive для повышения производительности (удалите соединения, которые не используются с некоторого времени).

Надеюсь, это поможет.

+0

О, хорошо. Благодарю. Можете ли вы помочь мне разобраться в этом? Что оно делает ? <порт Разъем = "8080" Протокол = "HTTP/1.1" ConnectionTimeOut = "20000" redirectPort = "8443" MaxThreads = "1" MAX_CLIENTS = "1" MaxKeepAliveRequests = "1" acceptCount =» 1" MinSpareThreads = "0" MaxConnections = "1" inProcessors = "1" maxProcessors = "1" макс-соединения = "1" /> –

+1

https://tomcat.apache.org/tomcat-7.0 -doc/конфигурации/http.html – Ved