Разница между веб-сервером, веб-контейнером и сервером приложений


98

Расскажите, пожалуйста, в чем разница между веб-сервером, веб-контейнером и сервером приложений.



Спасибо за ответ. Я просмотрел эти ссылки и хотел бы спросить вас об одном. Можно ли сказать, что Tomcat - это сервер приложений?
Гаутам

Нет, Tomcat - это контейнер сервлетов.
Дэвид Грант

Ответы:


64

Ваш вопрос похож на следующий:

В чем разница между сервером приложений и веб-сервером?

В Java: веб-контейнер или контейнер сервлетов или механизм сервлетов: используется для управления такими компонентами, как сервлеты, JSP. Это часть веб-сервера.

Веб-сервер или HTTP-сервер: сервер, способный обрабатывать HTTP-запросы, отправленные клиентом, и отвечать HTTP-ответом.

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


Спасибо за ответ. Можно ли сказать, что Tomcat - это сервер приложений.
Гаутам

Apache Tomcat - это Servlet Engine, а IBM - WebSphere Application Server - пример для Application Server
Dominc,

Apache HTTPD - это веб-сервер
атиш шимпи

5
Apache HTTPD - это веб-сервер, Apache Tomcat - это веб-контейнер, который на самом деле является Apach HTTPD + сервлетом. Сервер приложений Java с предыдущей конфигурацией будет: Apache Tomcat + контейнер EJB + API-интерфейсы (JDBC, JNDI, JTA / JTS, JCA, JMX, JAAS, Java Mail, JMS). Веб-контейнер запускает только WAR, сервер приложений запускает EAR.
ziMtyth

10

Веб-сервер: он предоставляет HTTP-запрос и HTTP-ответ. Он обрабатывает запросы от клиента только по протоколу HTTP. Он содержит веб-контейнер. Веб-приложение в основном развертывается на веб-сервере. EX: сервлет JSP

Веб-контейнер: он поддерживает жизненный цикл объекта сервлета. Вызывает метод службы для этого объекта сервлета. передать HttpServletRequest и HttpServletResponse Object

Сервер приложений: он содержит большое корпоративное приложение с большой бизнес-логикой. Это тяжелый вес или он предназначен для тяжелых приложений. Пример: EJB


8

Веб-приложение работает в веб-контейнере веб-сервера. Веб-контейнер предоставляет среду выполнения через компоненты, которые обеспечивают управление контекстом именования и жизненным циклом. Некоторые веб-серверы могут также предоставлять дополнительные услуги, такие как безопасность и контроль параллелизма. Веб-сервер может работать с сервером EJB для предоставления некоторых из этих услуг. Однако веб-сервер не обязательно должен находиться на том же компьютере, что и сервер EJB.

Веб-приложения состоят из веб-компонентов и других данных, таких как HTML-страницы. Веб-компоненты могут быть сервлетами, страницами JSP, созданными с помощью технологии JavaServer Pages ™, веб-фильтрами и прослушивателями веб-событий. Эти компоненты обычно выполняются на веб-сервере и могут отвечать на HTTP-запросы от веб-клиентов. Сервлеты, страницы JSP и фильтры могут использоваться для создания HTML-страниц, которые являются пользовательским интерфейсом приложения. Они также могут использоваться для генерации данных XML или другого формата, которые используются другими компонентами приложения.

Источник: http://www.service-architecture.com/articles/application-servers/j2ee_web_server_or_container.html


4

Веб-контейнер, также известный как контейнер сервлетов, является компонентом веб-сервера, который взаимодействует с сервлетами Java. Веб-контейнер отвечает за управление жизненным циклом сервлетов, отображение URL-адреса на конкретный сервлет и обеспечение того, чтобы инициатор запроса URL имел правильные права доступа.


1

Основное различие между веб-контейнерами и сервером приложений состоит в том, что большинство веб-контейнеров, таких как Apache Tomcat, реализуют только базовый JSR, такой как Servlet, JSP, JSTL, тогда как серверы приложений реализуют всю спецификацию Java EE. Каждый сервер приложений содержит веб-контейнер.


0

Веб-контейнер + обработка HTTP-запросов = веб-сервер

Веб-сервер + EJB + (обмен сообщениями + транзакции + и т. Д.) = ApplicaitonServer


-1

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

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


-1

Основная идея контейнера сервлетов заключается в использовании Java для динамического создания веб-страницы на стороне сервера с помощью сервлетов и JSP. Таким образом, контейнер сервлетов по сути является частью веб-сервера, который взаимодействует с сервлетами.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.