Создает ли сервер приложений новый поток для каждого запроса от одного и того же пользователя?

Вот простой сценарий:

Пользователь запускает некоторую операцию с веб-страницы веб-приложения. Эта операция тяжелая и занимает больше времени.

И до того, как операция будет завершена на стороне сервера, пользовательские триггеры скажут одну и ту же операцию с некоторыми другими параметрами. поэтому вторая операция для второго запроса также начнет обработку.

Итак, в этом случае существуют ли два разных потока, например, 1-й, который обрабатывает первый запрос, а другой - для 2-го? или это всего лишь один поток, обрабатывающий и запросы, и первая операция просто прервана (оставлена ​​незавершенной) ради выполнения второго запроса?

Здесь я не хочу, чтобы пользователь не запрашивал одну и ту же операцию несколько раз. Просто хочу знать, как это работает.

Это может быть глупый вопрос, но я немного запутался с этим. И то, что происходит со мной, добавляет путаницы. Мне кажется, что операция для 1-го запроса не завершена.

Это сервер приложений Websphere, если это поможет.

2 ответа

Решение

WebSphere Web Container использует Пул потоков для всех запросов.

Для любого запроса (не имеет значения, кто его сделал) поток получается из пула, запрос обрабатывается и поток возвращается в пул.

Даже если запросы выполняются один за другим, нет гарантии, что один и тот же поток их обработает.

Если вы видите, что один запрос мешает другому, это скорее всего то, что вы делаете в своем коде, а не из-за поведения WebSphere.

Нет. Каждый запрос не зависит от других. В веб-сфере нет привязки нитей. Один хороший способ научить себя - это проверить журналы веб-сферы. Когда WebSphere записывает запись в свой файл журнала, например, SystemOut.log и т. Д., Журнал включает идентификатор потока. Вот пример записи в файле журнала WebSphere:

[12/11/08 13: 06: 36: 830 CST] 0000002e VirtualHost I.....

Второе поле - это идентификатор потока, который равен "0000002e". Таким образом, вы можете сопоставить, как два запроса обрабатываются двумя разными потоками. Надеюсь, это имеет смысл для вас.

Другие вопросы по тегам