Apache Tomcat - Apache Tomcat

Apache Tomcat
Apache Tomcat logo.svg
Apache-tomcat-frontpage-epiphany-browser.jpg
Страница по умолчанию Apache Tomcat
Автор (ы) оригинала Джеймс Дункан Дэвидсон
Разработчики) Фонд программного обеспечения Apache
Первый выпуск 1999 ; 22 года назад ( 1999 )
Стабильный выпуск 10.0.11 (10 сентября 2021 г .; 38 дней назад ) [±] ( 2021-09-10 )
Предварительный выпуск 10.1.0-M5 (альфа) (10 сентября 2021 г . ; 38 дней назад ) [±] ( 2021-09-10 )
Репозиторий Репозиторий Tomcat
Написано в Джава
Тип Веб-сервер
HTTP контейнера сервлетов
Лицензия Лицензия Apache 2.0
Веб-сайт tomcat .apache .org Отредактируйте это в Викиданных

Apache Tomcat (сокращенно «Tomcat») - это бесплатная реализация с открытым исходным кодом технологий Jakarta Servlet , Jakarta Expression Language и WebSocket . Tomcat предоставляет среду веб-сервера HTTP на «чистом Java», в которой может работать код Java .

Tomcat разрабатывается и поддерживается открытым сообществом разработчиков под эгидой Apache Software Foundation , выпущенной под лицензией Apache License 2.0.

Компоненты

Tomcat 4.x был выпущен вместе с Catalina (контейнер сервлетов), Coyote (соединитель HTTP) и Jasper (механизм JSP ).

Каталина

Каталина - это контейнер сервлетов Tomcat . Каталина реализует спецификации Sun Microsystems для сервлетов и JavaServer Pages (JSP). В Tomcat элемент Realm представляет собой «базу данных» имен пользователей, паролей и ролей (аналогично группам Unix ), назначенных этим пользователям. Различные реализации Realm позволяют интегрировать Catalina в среды, где такая аутентификационная информация уже создается и поддерживается, а затем использовать эту информацию для реализации безопасности, управляемой контейнером, как описано в Спецификации сервлетов.

Койот

Coyote - это компонент Connector для Tomcat, который поддерживает протоколы HTTP 1.1 и 2 в качестве веб-сервера. Это позволяет Catalina, номинально являющемуся Java-сервлетом или контейнером JSP, также действовать как простой веб-сервер, который обслуживает локальные файлы как HTTP-документы. Coyote прослушивает входящие соединения с сервером на определенном TCP- порту и пересылает запрос в Tomcat Engine для обработки запроса и отправки ответа запрашивающему клиенту. Другой коннектор Coyote, Coyote JK, прослушивает аналогично, но вместо этого перенаправляет свои запросы на другой веб-сервер, такой как Apache, с использованием протокола JK . Обычно это обеспечивает лучшую производительность.

Джаспер

Джаспер - это JSP-движок Tomcat. Jasper анализирует файлы JSP, чтобы скомпилировать их в код Java в виде сервлетов (что может обрабатываться Catalina). Во время выполнения Jasper обнаруживает изменения в файлах JSP и перекомпилирует их.

Начиная с версии 5, Tomcat использует Jasper 2, который является реализацией спецификации Sun Microsystems JSP 2.0. От Jasper до Jasper 2 были добавлены важные функции:

  • Объединение библиотеки тегов JSP - каждая разметка тега в файле JSP обрабатывается классом обработчика тегов. Объекты класса обработчика тегов могут быть объединены и повторно использованы во всем сервлете JSP.
  • Фоновая компиляция JSP - при перекомпиляции измененного кода Java JSP более старая версия все еще доступна для запросов сервера. Старый сервлет JSP удаляется после завершения перекомпиляции нового сервлета JSP.
  • Перекомпилируйте JSP при включении изменений страницы - страницы можно вставлять и включать в JSP во время выполнения. JSP будет не только перекомпилирован с изменениями файла JSP, но также с включенными изменениями страниц.
  • Компилятор JDT Java - Jasper 2 может использовать компилятор Java Eclipse JDT (Java Development Tools) вместо Ant и javac.

С выпуском Tomcat 7 были добавлены три новых компонента:

Кластер

Этот компонент был добавлен для управления большими приложениями. Он используется для балансировки нагрузки, которая может быть достигнута с помощью многих методов. Для поддержки кластеризации в настоящее время требуется JDK версии 1.5 или выше.

Высокая доступность

Была добавлена ​​функция высокой доступности для облегчения планирования обновлений системы (например, новых выпусков, запросов на изменение) без воздействия на рабочую среду. Это делается путем отправки запросов реального трафика на временный сервер на другом порту, в то время как основной сервер обновляется на основном порту. Это очень полезно при обработке запросов пользователей в веб-приложениях с высокой посещаемостью.

веб приложение

Он также добавил улучшения как пользовательских, так и системных веб-приложений, чтобы добавить поддержку для развертывания в различных средах. Он также пытается управлять сеансами, а также приложениями в сети.

Tomcat создает дополнительные компоненты. С Apache Tomcat можно использовать ряд дополнительных компонентов. Эти компоненты могут быть созданы пользователями, если они им понадобятся, или они могут быть загружены с одного из зеркал.

Функции

Tomcat 8.x реализует спецификации Servlet 3.1 и JSP 2.3. Apache Tomcat 8.5.x предназначен для замены 8.0.x и включает новые функции, перенесенные из Tomcat 9.0.x. Минимальная версия Java и реализованные версии спецификации остаются без изменений.

Tomcat 9.x реализует спецификации Servlet 4.0 и JSP 2.3.

Tomcat 10.x реализует спецификации сервлетов 5.0 и JSP 3.0.

История

Tomcat начинал как сервлет эталонной реализации по Джеймсу Дункан Дэвидсон , архитектор программного обеспечения в компании Sun Microsystems. Позже он помог сделать проект открытым и сыграл ключевую роль в его пожертвовании Sun Microsystems Apache Software Foundation. Apache Ant инструмент автоматизации сборки программного обеспечения был разработан как побочный эффект создания Tomcat в качестве проекта с открытым исходным кодом.

Первоначально Дэвидсон надеялся, что проект станет открытым, и, поскольку со многими проектами с открытым исходным кодом были связаны книги О'Рейли с изображением животного на обложке, он хотел назвать проект в честь животного. Он придумал кота Тома, поскольку считал, что животное представляет собой нечто, что может постоять за себя. Хотя кот уже использовался для другого титула О'Рейли, его желание увидеть укрытие с животными в конечном итоге сбылось, когда О'Рейли опубликовал свою книгу о котах со снежным барсом на обложке в 2003 году.

Релизы

Серии Объявлен стабильным Описание Последний релиз Последняя дата выпуска Конец жизни
Старая версия, больше не поддерживается: 2.0 1998 г. Tomcat начался в ноябре 1998 года в качестве сервлета эталонной реализации по Джеймсу Дункан Дэвидсон , архитектор программного обеспечения в компании Sun Microsystems.
Старая версия, больше не поддерживается: 3.0 1999 г. Первый выпуск. Слияние предоставленного Sun Java Web Server кода и спецификаций ASF и реализации Servlet 2.2 и JSP 1.1. 3.3.2 2004-03-09
Старая версия, больше не поддерживается: 4.1 2002-09-06 Первый выпуск Apache Tomcat, поддерживающий спецификации Servlet 2.3 и JSP 1.2. 4.1.40 2009-06-25
Старая версия, больше не поддерживается: 5.0 2003-12-03 Первый выпуск Apache Tomcat с поддержкой спецификаций Servlet 2.4, JSP 2.0 и EL 1.1 . 5.0.30 2004-08-30
Старая версия, больше не поддерживается: 5.5 2004-11-10 Разработан для J2SE 5.0. Включение Eclipse JDT позволяет Tomcat работать без установленного полного комплекта разработки Java. 5.5.36 2012-10-10
Старая версия, больше не поддерживается: 6.0 2007-02-28 Первый выпуск Apache Tomcat с поддержкой спецификаций Servlet 2.5, JSP 2.1 и EL 2.1. 6.0.53 2017-04-07 2016-12-31
Старая версия, больше не поддерживается: 7.0 2011-01-14 Первый выпуск Apache Tomcat с поддержкой спецификаций Servlet 3.0, JSP 2.2, EL 2.2 и WebSocket. 7.0.109 2021-04-26 2021-03-31
Старая версия, больше не поддерживается: 8.0 2014-06-25 Первый выпуск Apache Tomcat, поддерживающий спецификации Servlet 3.1, JSP 2.3 и EL 3.0. 8.0.53 2018-07-05 2018-06-30
Старая версия, но все еще поддерживается: 8,5 2016-06-13 Добавляет поддержку HTTP / 2 , OpenSSL для JSSE, виртуального хостинга TLS и JASPIC 1.1. Создано из Tomcat 9 после задержек с Java EE 8. 8.5.72 2021-10-01
Старая версия, но все еще поддерживается: 9.0 2018-01-18 Первый выпуск Apache Tomcat, поддерживающий спецификации Servlet 4.0. 9.0.53 2021-09-10
Текущая стабильная версия: 10.0 2021-02-02 Первый выпуск Apache Tomcat с поддержкой спецификаций Servlet 5.0, JSP 3.0, EL 4.0, WebSocket 2.0 и Authentication 2.0. 10.0.11 2021-09-10
Легенда:
Старая версия
Старая версия, все еще поддерживается
Последняя версия
Последняя предварительная версия
Будущий выпуск


Apache TomEE

Apache TomEE (произносится как «Tommy») - это Java Enterprise Edition Apache Tomcat (Tomcat + Java EE = TomEE), который объединяет несколько корпоративных проектов Java, включая Apache OpenEJB , Apache OpenWebBeans, Apache OpenJPA , Apache MyFaces и другие. В октябре 2011 года проект получил сертификацию Oracle Corporation как совместимую реализацию Java EE 6 Web Profile.

Смотрите также

использованная литература

Библиография

внешние ссылки