Как ограничить количество потоков Tomcat?

У меня есть кот 7 работ низкой памяти CentOS. В настоящее время это имеет 2 коннектора для портов 80 и 443. Важные параметры конфигурации:

<Connector port="80" protocol="HTTP/1.1" executor="tomcatThreadPool"
                connectionTimeout="10000"
                keepAliveTimeout="60000"

<Connector port="443" protocol="HTTP/1.1" executor="tomcatThreadPool"
                SSLEnabled="true" scheme="https" secure="true"
                connectionTimeout="10000"
                keepAliveTimeout="60000"

Оба коннектора связываются с исполнителем:

<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
                maxThreads="100" minSpareThreads="3"
                maxIdleTime="120000" />

Когда кот сначала запускается, он запускает приблизительно 50 потоков. После приблизительно пользователи 15-20, соединяющиеся с веб-приложением, это увеличено приблизительно до 60. (Я считаю потоки кота с командой ps -eLf | grep java |grep tomcat |wc -l)

У меня есть приблизительно 4 соединения в минуту, это - не больше чем 5 из-за природы моего приложения. Поэтому я хочу, чтобы кот запустил минимальные возможные потоки. Так как я настроил минимум 3 запасных потоков и проверки активности как 2 минуты, это не должно переходить 20 или что-то. Но я неправ.

Как я могу ограничить количество потоков Tomcat к минимальному значению как 20 или 30?

0
задан 15 February 2015 в 14:51
1 ответ

Согласно данной документации количество минимальных потоков может быть сконфигурировано с помощью следующего параметра:

Attribute Description
minSpareThreads(int) Минимальное количество постоянно поддерживаемых потоков, по умолчанию 25

Согласно данной документации оно может быть реализовано следующим образом:

<Connector port="8080" address="localhost"     
     minSpareThreads="20" />

При загрузке сервера HTTP-коннектор будет создавать несколько потоков обработки на основе значения, настроенного для атрибута minSpareThreads.

1
ответ дан 4 December 2019 в 17:07

Теги

Похожие вопросы