2016-02-09 6 views
1

Я собираюсь использовать веб-сервер Jetty для работы с соединениями в сети. Согласно the documentationТолько Jetty 9 NIO?

От причала 9 и далее есть только один простой тип разъема (ServerConnector), который на основе НИО и использует Все типы подключений обрабатывать один или несколько протоколов.

Итак, означает ли это, что Jetty имеет специальную фабрику соединений для веб-сайтов и использует ее с простым коннектором типа (ServerConnector), который основан на NIO?

И мне не нужно ничего «настраивать» в Jetty для обработки запросов с помощью NIO.

Спасибо!

ответ

1

Это чисто основано на том, что я прочитал/понял из документации.

Is Jetty 9 NIO только?

Видимо, да. Или, по крайней мере, для серверной связи с клиентами. (Эта часть документации говорит только о классах на стороне сервера соединения.)

Таким образом, это означает, что Jetty имеет специальный завод подключения для WebSockets и использует его с простым типом разъема (ServerConnector), который NIO?

Я не думаю, что это так. На самом деле, я подозреваю, что соединение, созданное одним из других протоколов (HTTP, HTTPS, AJP, SPDY), используется реализацией websocket. Websockets работают, «обновляя» начальное соединение с websocket. Уже существует соединение, созданное до того, как запрос попадет в реализацию WebsocketServlet (или что-то еще).

Таким образом, для веб-сайтов не должно быть специальной фабрики соединений. И я не мог найти его, когда я быстро взглянул на исходный код Jetty/javadocs.

И мне не нужно ничего «настраивать» в Jetty для обработки запросов с помощью NIO.

Я думаю, что это правильно. Под капотом реализация websockets будет использовать единственный и единственный тип соединителя ... который основан на NIO.

Смежные вопросы