Apache Tomcat - Apache Tomcat

Apache Tomcat
Tomcat-logo.svg
Страница по умолчанию Apache Tomcat
Страница по умолчанию Apache Tomcat
Оригинальный автор (ы)Джеймс Дункан Дэвидсон
Разработчики)Фонд программного обеспечения Apache
изначальный выпуск1999; 21 год назад (1999)
Стабильный выпуск9.0.40 (17 ноября 2020 г.; 19 дней назад (2020-11-17) [1]) [±]
Предварительный выпуск10.0.0-M10 (17 ноября 2020 г.; 19 дней назад (2020-11-17) [2]) [±]
РепозиторийРепозиторий Tomcat
Написано вЯва
ТипКонтейнер сервлета
HTTP веб сервер
ЛицензияЛицензия Apache 2.0
Интернет сайтКот.apache.org Отредактируйте это в Викиданных

Apache Tomcat (сокращенно "Tomcat") - это Открытый исходный код реализация Сервлет Java, JavaServer Pages, Язык выражений Java и WebSocket технологии.[3] Tomcat предоставляет "чистую Java" HTTP веб сервер среда, в которой Ява код может работать.

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

Составные части

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

Каталина

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

Койот

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

Джаспер

Джаспер - это JSP Engine Tomcat. Джаспер разбирает 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) вместо Муравей и javac.

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

Кластер

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

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

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

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

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

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

Функции

Tomcat 7.x реализует спецификации Servlet 3.0 и JSP 2.2.[9] Для этого требуется Java версии 1.6, хотя предыдущие версии работали на Java с 1.1 по 1.5. В версиях с 5 по 6 были улучшены вывоз мусора, Анализ JSP, производительность и масштабируемость. Нативные оболочки, известные как Tomcat Native, доступны для Майкрософт Виндоус и Unix для интеграции платформы.

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

История

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

Дэвидсон изначально надеялся, что проект станет с открытым исходным кодом, и, поскольку многие проекты с открытым исходным кодом О'Рейли связанных с ними книг с изображением животного на обложке, он хотел назвать проект в честь животного. Он придумал ТомКот поскольку он считал, что животное представляет собой нечто, что может постоять за себя. Хотя кот уже использовался для другого титула O'Reilly,[13] его желание увидеть прикрытие с животными в конце концов сбылось, когда О'Рейли опубликовал свою книгу Tomcat с снежный барс на обложке в 2003 году.[14]

Релизы

Версии Apache Tomcat
СерииОбъявлен стабильнымОписаниеПоследний релизДата последнего выпускаКонец жизни[15]
Старая версия, больше не поддерживается: 2.01998Tomcat стартовал в ноябре 1998 г.[16] как сервлет эталонная реализация к Джеймс Дункан Дэвидсон, архитектор программного обеспечения в Sun Microsystems.
Старая версия, больше не поддерживается: 3.01999Изначальный выпуск. Слияние переданного кода веб-сервера Sun Java и спецификаций ASF и реализации сервлетов 2.2 и JSP 1.1.3.3.22004-03-09
Старая версия, больше не поддерживается: 4.12002-09-06[17]Первый выпуск Apache Tomcat с поддержкой Servlet 2.3 и JSP 1.2[18] технические характеристики.4.1.402009-06-25
Старая версия, больше не поддерживается: 5.02003-12-03Первый выпуск Apache Tomcat с поддержкой Servlet 2.4, JSP 2.0 и EL 1.1[18] технические характеристики.5.0.302004-08-30
Старая версия, больше не поддерживается: 5.5[19]2004-11-10[20]Разработан для J2SE 5.0. Включение Eclipse JDT позволяет Tomcat работать без установленного полного комплекта разработки Java.5.5.362012-10-10
Старая версия, больше не поддерживается: 6.02007-02-28[21]Первый выпуск Apache Tomcat с поддержкой Servlet 2.5, JSP 2.1,[18] и EL 2.1.6.0.532017-04-072016-12-31[22]
Старая версия, но все еще поддерживается: 7.02011-01-14[23]Первый выпуск Apache Tomcat с поддержкой Servlet 3.0, JSP 2.2, EL 2.2 и WebSocket[18] технические характеристики.7.0.1072020-11-232021-03-31[24]
Старая версия, больше не поддерживается: 8.02014-06-25[25]Первый выпуск Apache Tomcat с поддержкой Servlet 3.1, JSP 2.3 и EL 3.0[18] технические характеристики.8.0.532018-07-052018-06-30[26]
Старая версия, но все еще поддерживается: 8.52016-06-13Добавляет поддержку HTTP / 2, OpenSSL для JSSE, виртуальный хостинг TLS и JASPIC 1.1. Создано из Tomcat 9 после задержек с Java EE 8.8.5.602020-11-17
Текущая стабильная версия: 9.02018-01-18Первый выпуск Apache Tomcat с поддержкой Servlet 4.0[18] технические характеристики.9.0.402020-11-17
Последняя предварительная версия будущего выпуска: 10.0НеизвестноПервый выпуск Apache Tomcat с поддержкой Servlet 5.0, JSP 3.0, EL 4.0, WebSocket 2.0 и Authentication 2.0[18] технические характеристики.10.0.0-M102020-11-17
Легенда:
Старая версия
Старая версия, все еще поддерживается
Последняя версия
Последняя предварительная версия
Будущий выпуск

Сообщества

Программное обеспечение Apache создается как часть процесса сообщества, в котором участвуют как пользователь, так и разработчик. списки рассылки. В списке разработчиков происходит обсуждение создания и тестирования следующего выпуска, а в списке пользователей пользователи могут обсуждать свои проблемы с разработчиками и другими пользователями.

Некоторые из бесплатных ресурсов и сообществ Apache Tomcat включают Tomcatexpert.comSpringSource -спонсируемое сообщество разработчиков и операторов, использующих Apache Tomcat в крупномасштабных производственных средах) и MuleSoft Центр ресурсов Apache Tomcat (в котором есть инструкции по установке, обновлению, настройке, мониторингу, устранению неполадок и обеспечению безопасности различных версий Tomcat).

Apache TomEE

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

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

Рекомендации

  1. ^ "Apache Tomcat - Добро пожаловать!". Apache Tomcat. Фонд программного обеспечения Apache. 2020-11-17. Получено 2020-11-19.
  2. ^ "Apache Tomcat - Добро пожаловать!". Apache Tomcat. Фонд программного обеспечения Apache. 2020-11-17. Получено 2020-11-19.
  3. ^ «Как установить Apache Tomcat на Ubuntu Server 16.04». Получено 2019-10-04.
  4. ^ «Справочник по настройке Apache Tomcat - компонент Realm». Tomcat.apache.org. Получено 2013-11-01.
  5. ^ Коннектор Coyote HTTP / 1.1, Apache
  6. ^ «Справочник по конфигурации сервера - соединитель Coyote JK». tomcat.apache.org. Получено 24 августа 2018.
  7. ^ Кинг, Грэм (20 декабря 2004 г.). "Tomcat высокой доступности". JavaWorld. Получено 2020-07-21.
  8. ^ Реми Маучерат (2013-10-18). «Apache Tomcat 7 (7.0.47) - Дополнительные компоненты». Tomcat.apache.org. Получено 2013-11-01.
  9. ^ «Версии Apache Tomcat». Получено 2011-11-12.
  10. ^ "Apache Tomcat® - Загрузка программного обеспечения Apache Tomcat 8". tomcat.apache.org. Получено 24 августа 2018.
  11. ^ МакКланахан, Крейг Р. «Apache Tomcat 8 (8.5.33) - Указатель документации». tomcat.apache.org. Получено 24 августа 2018.
  12. ^ Дэвидсон, Джеймс Дункан (14 ноября 2014 г.). "Какова была история Tomcat внутри Sun до того, как он был открыт с открытым кодом?". Quora. Получено 2018-07-25.
  13. ^ Синан Си Альхир (1998), UML в двух словах, Книги О'Рейли, стр.296, ISBN  978-1-56592-448-2
  14. ^ Бриттен, Джейсон; Дарвин, Ян Ф., Tomcat: полное руководство (1-е изд.), O'Reilly Media, п.320, ISBN  978-0596003180, получено 2018-03-01
  15. ^ «Версии Tomcat - Apache Tomcat - Фонд программного обеспечения Apache». cwiki.apache.org. Получено 2020-07-20.
  16. ^ "История происхождения Tomcat". TechNotif. Архивировано из оригинал 30 июня 2018 г.. Получено 23 июля 2017.
  17. ^ "[ОБЪЯВЛЕНИЕ] Tomcat 4.1.10 стабильный". Получено 21 сентября 2015.
  18. ^ а б c d е ж грамм Saegesser, Марк А. "Apache Tomcat® - Какая версия мне нужна?". tomcat.apache.org. Получено 24 августа 2018.
  19. ^ Проект Apache Tomcat. "Apache Tomcat". Получено 21 сентября 2015.
  20. ^ «Сайт в Джакарте - новости и статус». Получено 21 сентября 2015.
  21. ^ «[ANN] Выпущен Apache Tomcat 6.0.10». Получено 21 сентября 2015.
  22. ^ «Apache Tomcat® - Окончание срока службы Apache Tomcat 6.0.x». tomcat.apache.org. Получено 2020-07-20.
  23. ^ Проект Apache Tomcat. "Apache Tomcat". Получено 21 сентября 2015.
  24. ^ "Apache Tomcat® - Окончание срока службы Apache Tomcat 7.0.x". tomcat.apache.org. Получено 2020-07-20.
  25. ^ Проект Apache Tomcat. "Apache Tomcat". Получено 5 октября 2015.
  26. ^ «Apache Tomcat® - Окончание срока службы Apache Tomcat 8.0.x». tomcat.apache.org. Получено 2020-07-20.
  27. ^ "Apache TomEE". Apache OpenEJB.
  28. ^ «Apache Software Foundation объявляет о том, что Apache TomEE сертифицирован как совместимый с веб-профилем Java EE 6». MarketWatch. 4 октября 2011 г.
  29. ^ «Веб-стек Apache TomEE получает одобрение». InfoWorld. 7 октября 2011 г.

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

внешняя ссылка