|
|
|
Как поднять Томкат ?
|
|||
|---|---|---|---|
|
#18+
В настройках Томката стоит очередь на входящие запросы = 600, максимальное кол-во потоков = 1000 При тестированиее сервлета в течении часа отправляются от 600 с возрастанием до 1000 с запросов этого сервлета. В логе Томката появляется 1 запись: SEVERE: All threads (1,000) are currently busy, waiting. Increase maxThreads (1,000) or check the servlet status Это понятно. Все потоки в пуле заняты и остальные запросы отбрасываются по тайм-ауту. Но после прекращения теста, Томкат больше не реагирует ни на один запрос - просто висит. Почему не восстанавливается его работоспособность ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 11:57 |
|
||
|
Как поднять Томкат ?
|
|||
|---|---|---|---|
|
#18+
а сервлет нормально отрабатывает? воспользуйся RequestValve чтобы его попрофилировать.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 12:05 |
|
||
|
Как поднять Томкат ?
|
|||
|---|---|---|---|
|
#18+
Те которые попали в очередь - обрабатываются, те которые не попали - по таймауту отбрасываются. Естественно со временем все кол-во запросов доходит до 1000 и эти 1000 одновременных запросов непрырывно поступают сервлету. Никаких ошибок у сервлета не выдает. Видимо после таких интенсивных многочисленных запросов пул потоков Томката сбоит. А вот как его восстановить - не знаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 12:28 |
|
||
|
Как поднять Томкат ?
|
|||
|---|---|---|---|
|
#18+
я наверно чет не понимаю но, судя по тому, что ты написал можно заключить, что 1. сервлет производит долговременную операцию, сравнимую по длительности с продолжительностью теста 2. при достижении количества запросов = 1000 оказывается, что 1000 тредов выполняет одну и ту же операцию. дальнейшие запросы отбрасываются 3. на этом ты желаешь "прекратить" тест 4. но треды все работают, выполняя операцию 5. как ты указываешь тредам, что они должны завершить операцию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 12:51 |
|
||
|
Как поднять Томкат ?
|
|||
|---|---|---|---|
|
#18+
Не совсем так К сервлету поступает запрос, он его обрабатывает и возвращает клиенту. Операция эта не мгновенная, но и не занимает много времени. Дело в том что я провожу тестирование так: в течении часа к сервлету поступает ОДНОВРЕМЕННО 1000 запросов (максимальный пул потоков у Томката = тоже 1000). Точнее стартует тест со значение 600 ОДНОВРЕМЕННЫХ запросов с инкрементов 1, и через минут доходит до 1000 Далее в течении часа идет именно циклическая нагрузка в 1000 одновременных запросов. Буквально как только кол-во запросов = 1000 выскакиевает SEVERE: All threads (1,000) are currently busy, waiting. Increase maxThreads (1,000) or check the servlet status Это и должно быть Далее после прекращения теста запросы прекращаются. Трэды еще обрабатывающие запрос - умрут после его обработки (время обработки не большое) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 13:36 |
|
||
|
Как поднять Томкат ?
|
|||
|---|---|---|---|
|
#18+
сорри, я не догнал сначала с таким не сталкивался, сейчас глянул в майл-архивах apache.org там много вопросов, почему треды не освобождаются.. поищи.. удачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2005, 13:55 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=33173489&tid=2151930]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 386ms |

| 0 / 0 |
