Я знаю, что Glassfish использует компонент под названием Grizzly, но я не уверен, какую именно роль выполняет Grizzly. Я читал, что это «интерфейс» для Glassfish. Это правильно? Что именно делает Grizzly, скажем, когда приходит HTTP-запрос или отправляется ответ, проходит ли он сначала через Grizzly? И если да, то по какой причине?
Как Grizzly сочетается с Glassfish?
Ответы (2)
Grizzly выполняет всю тяжелую работу NIO от имени одного или нескольких различных контейнеров в GlassFish. Это очень похоже на функциональность соединителя Tomcat. Соединители выполняют сетевые операции от имени основного веб-контейнера.
В случае HTTP Grizzly отвечает за синтаксический анализ и сериализацию HTTP-запросов/ответов. Он также предоставляет инфраструктуру, позволяющую поддерживать работу Servlet Async. В случае EE7 Grizzly также предоставляет функциональные возможности, необходимые для поддержки неблокирующего ввода-вывода в сервлетах.
Прямо с главной страницы проекта:
Платформа Grizzly NIO и Web была разработана, чтобы помочь разработчикам воспользоваться преимуществами Java™ NIO API. Целью Grizzly является помощь разработчикам в создании масштабируемых и надежных серверов с использованием NIO. Мы также предлагаем расширенные компоненты инфраструктуры: Web Framework (HTTP/S), протокол Bayeux, Servlet, HttpService OSGi и Comet.
Руководство пользователя доступно вместе с кодом примеры, демонстрирующие различные способы его использования.
Пожалуйста, ознакомьтесь с проектом Grizzly на Java.net, чтобы узнать больше и узнать, как принять в нем участие.