Объяснение maxQueueSize в исполнителе tomcat

Пожалуйста, уточните значение параметра maxQueueSize в исполнителе tomcat.

Дополнительный вопрос - связано ли это с acceptCount в коннекторе tomcat?

Заранее спасибо.


person kawu    schedule 03.06.2015    source источник
comment
google.de/   -  person Stefan    schedule 03.06.2015


Ответы (1)


Это очень хорошо упоминается здесь

Для каждого входящего запроса требуется поток на время выполнения этого запроса. Если получено больше одновременных запросов, чем могут обработать доступные в данный момент потоки обработки запросов, будут созданы дополнительные потоки до настроенного максимума (значение атрибута maxThreads). Если поступает еще больше одновременных запросов, они складываются внутри серверного сокета, созданного коннектором, до настроенного максимума (значение атрибута acceptCount). Любые дальнейшие одновременные запросы будут получать ошибки «отказ в соединении», пока не будут доступны ресурсы для их обработки.

maxQueueSize : -Максимальное количество выполняемых задач, которые могут стоять в очереди в ожидании выполнения, прежде чем мы их отклоним. Значение по умолчанию — Integer.MAX_VALUE.

Параметр acceptCount связан с очередью TCP. В этой очереди ОС может задерживать определенное количество подключений, даже если они не могут быть обработаны немедленно. Эта концепция зависит от ОС - для Linux вы можете понять это, обратившись к здесь и еще несколько идей здесь.

maxQueueSize – это очередь, содержащая фактические задачи обработки запросов, которые могут быть запущены с помощью максимум maxThreads количества потоков. На самом деле они находятся в очереди по той причине, что количество потоков обработки ограничено, и задача проводит некоторое время в очереди, прежде чем ее подберет Executor и назначит потоку, который свободен для выполнения задачи.

person Shailendra    schedule 03.06.2015