IO обработки в Tomcat - PullRequest
       24

IO обработки в Tomcat

0 голосов
/ 30 июня 2011

Я заметил существенную разницу во времени обработки между двумя сервлетами в одном и том же коте и двумя отдельными котами на одном хосте.Сервлеты общаются, используя http.Есть ли у tomcat или java какой-то механизм, который оптимизирует http-связь в том же tomcat или JVM.Я пытаюсь подтвердить, что это наблюдение не связано с хостом, на котором я работаю.

Ответы [ 2 ]

1 голос
/ 30 июня 2011

Это может быть разница между блокирующим и неблокирующим вводом / выводом.

Tomcat использует многопоточную модель: имеет пул потоков для обработки запросов и очередь для входящих запросов. Сервер назначает поток входящему запросу для обработки, выполняет задачу, отправляет ответ и возвращает поток в пул. Очередь обрабатывает резервные копии запросов.

Неблокирующая IO, используемая Netty, это нечто иное.

Возможно, два запроса ставятся в очередь, когда обрабатываются одним и тем же Tomcat.

0 голосов
/ 01 июля 2011

Еще немного информации об этих тестах.Оба теста выполняются в SunOS 5.10 с Apache Tomcat версии 6.0.20 и jdk1.6.0_23.Передачи http могут включать довольно большие файлы - 5M.Обработка потоков может объяснить, но с разницей во времени более чем в 10 раз я подозреваю, что данные не должны передаваться из JVM.Некоторая форма блокировки против неблокирования может соответствовать разнице во времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...