Tomcat для чего нужен
Что такое Apache Tomcat?
Введение в Apache Tomcat
Apache tomcat может быть определен как веб-сервер (который также называется веб-контейнером / контейнером сервлетов), который обрабатывает сервлеты, JSP (путем внутреннего преобразования вашего JSP в сервлеты внутри), а также отображает JSP.
Обратите внимание, что веб-сервер отличается от сервера приложений. Давайте поймем, как эти двое отличаются друг от друга.
Почему Tomcat называется веб-сервером, а не сервером приложений?
Почему нам нужно использовать Apache Tomcat?
Как работает Apache Tomcat?
Tomcat широко используется веб-разработчиками при разработке веб-приложений. С точки зрения высокого уровня, Apache Tomcat отвечает за обеспечение среды выполнения для сервлетов. Это обеспечивает среду, в которой можно запустить их Java-код.
В более подробном аспекте tomcat отвечает за:
С момента, когда класс сервлета загружается, до точки, в которой он выгружен, сервлет отвечает за обработку клиентского запроса, выполняя различные методы его жизненного цикла и предоставляя необходимый ответ обратно tomcat в виде страниц JSP. Затем Tomcat возвращает ответ клиенту, отрисовывая JSP.
Что происходит в жизненном цикле сервлетов?
Жизненный цикл сервлета состоит из трех основных методов:
1) init () : этот метод используется для инициализации сервлета. Сервлет инициализируется только один раз, либо при запуске сервера, либо при его вызове клиентом с использованием соответствующего URL-адреса.
2) service () : после создания экземпляра сервлета tomcat вызывает метод обслуживания сервлета. Сервисный метод отвечает за генерацию ответа на входящий запрос, переданный ему tomcat. Этот метод вызывает другие ресурсы на стороне сервера, необходимые для извлечения данных из базы данных и предоставления ответа обратно tomcat.
3) destroy () : метод уничтожения вызывается tomcat в конце для всех действий, связанных с очисткой, таких как закрытие соединений с базой данных, освобождение ресурсов для сбора мусора и т. Д.
Преимущества Apache Tomcat
Apache Tomcat является наиболее широко и часто используемым программным обеспечением среди разработчиков веб-приложений на сегодняшний день. Исследования утверждают, что более 60% Java-приложений используют Apache Tomcat. Существует множество документации и учебных пособий по использованию и настройке Apache Tomcat, что упрощает и делает возможным для новых разработчиков веб-приложений работу с Apache Tomcat.
Рекомендуемые статьи
Русские Блоги
Введение в Tomcat
Введение в Tomcat
Servlet
Контейнер для сервлетов
Отвечает за обработку клиентских запросов, передачу запросов сервлетам и возврат результатов клиентам. Реальная реализация контейнера для разных программ может отличаться, но интерфейс между контейнером и сервлетом определяется API сервлета. Этот интерфейс определяет метод, который контейнер сервлета будет вызывать в сервлете, и класс объекта, передаваемый сервлету.
Жизненный цикл сервлета
История кота
Apache Tomcat 7.x
Основываясь на преимуществах Tomcat 6.0.x, он поддерживает функции Servlet 3.0, JSP 2.2 и EL 2.2. Другие улучшения перечислены ниже:
Apache Tomcat6.x
На основе преимуществ Tomcat 5.5.x поддерживаются Servlet 2.5 и JSP 2.1. Другие улучшения перечислены ниже:
Apache Tomcat 5.x
Apache Tomcat 5.0.x внес много изменений на основе Apache Tomcat 4.1, в том числе:
Введение в архитектуру Tomcat
Эта вики в основном основана на Tomcat6
Введение в архитектуру
Базовая структура Tomcat
Catalina
Основной класс для взаимодействия со скриптами запуска / закрытия оболочки
connector
Пример конфигурации соединителя
Выбор протокола включает в себя
BIO/NIO/AIO
Java поддерживает BIO, NIO, AIO следующим образом
БИО, НИО, АИО применимый анализ сценариев
структура соединителя
Взять Http11Protocol в качестве примера
контейнер
Контейнеры содержат различные логические единицы и данные времени выполнения. Контейнер Tomcat разделен на 4 уровня. Следующим образом:
Эти разделенные модули делают tomcat очень надежным. Благодаря некоторой конфигурации и настройке модуля, tomcat может быть значительно расширен.
Возьмем типичное посещение страницы в качестве примера, предположим, что посещенный URLhttp://www.mydomain.com/app/index.html
Детали каждого контейнерного процесса показаны на рисунке.
Оболочка инкапсулирует определенные ресурсы доступа, такие как index.html
Контекст инкапсулирует коллекцию ресурсов обертки, таких как приложение
Хост инкапсулирует коллекцию контекстных ресурсов, таких как www.mydomain.com
Engine
Включает в себя 4 компонента
Context
Wrapper
Трубопровод и клапан работают так же, как контейнер выше. Более конкретными логическими единицами являются объект сервлета и объект стека сервлета. В контейнере-оболочке существует только один из этих двух объектов, то есть только один из них не пуст. Когда он существует как объект сервлета, это указывает на то, что сервлет поддерживает многопоточный параллельный доступ, то есть процесс синхронизации потоков отсутствует. Этот контейнер-обертка содержит только один объект сервлета (это наш общий шаблон); при использовании стека сервлетов Когда объект существует, это означает, что сервлет не поддерживает многопоточный параллельный доступ. Каждый объект сервлета может быть вызван только одним потоком в любое время. Таким образом, стек сервлета реализует простой пул потоков. Этот контейнер-обертка содержит только набор объектов сервлета. Его базовый прототип реализован в режиме рабочего потока.
Обертка в основном включает в себя три категории
Процесс запуска
Логика запуска Tomcat разработана на основе режима наблюдателя. Все контейнеры наследуют интерфейс Lifecycle. Он управляет всем жизненным циклом контейнера. Он будет уведомлять зарегистрированных наблюдателей (Listeners), когда любой контейнер изменяется и изменяется в состоянии. )
Временная диаграмма для запуска Tomcat является
Обработка HTTP-запроса
В принципе, Соединитель получает запрос и передает его Контейнеру. Контейнер отображает запрос в соответствующий Engine, Host, Context и Wrapper для обработки через вышеупомянутый преобразователь.
Основной принцип инфраструктуры MVC состоит в том, чтобы отобразить все запросы к сервлету, а затем реализовать метод обслуживания.Этот метод также является входом в инфраструктуру MVC.
Структура каталогов Tomcat
Каталог Tomcat в основном должен включать следующие каталоги
Имя каталога | использование |
---|---|
/bin | Запускать и останавливать файлы сценариев Tomcat |
/conf | Различные глобальные файлы конфигурации для сервера Tomcat |
/doc | файл |
/lib | Различные файлы JAR, необходимые для сервера Tomcat |
/logs | Файл журнала |
/webapps | Опубликовать каталог и файл, соответствующий приложению |
/work | Файлы классов, сгенерированные после компиляции JSP |
Конфигурация Tomcat
Основные конфигурационные файлы, включенные в Tomcat, включают