В чем разница между сервером приложений и веб-сервером? - PullRequest
638 голосов
/ 01 июня 2009

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

Ответы [ 25 ]

2 голосов
/ 31 октября 2009

Не обязательно четкая разделительная линия. В настоящее время многие программы сочетают в себе элементы как обслуживания http-запросов (веб-сервер), так и обработки бизнес-логики (сервер приложений)

1 голос
/ 31 октября 2009

Несмотря на то, что между ними могут быть совпадения (некоторые веб-серверы могут даже использоваться в качестве серверов приложений), наибольшее различие ИМХО заключается в модели обработки и управлении сеансами:

В модели обработки веб-сервера основное внимание уделяется обработке запросов; понятие «сессия» в значительной степени виртуально. То есть, что «сессия» моделируется путем передачи представления состояния между клиентом и сервером (следовательно, REST) ​​и / или сериализации его во внешнее постоянное хранилище (SQL Server, Memcached и т. Д.).

На сервере приложений сеанс обычно является более явным и часто принимает форму объекта, живущего в памяти сервера приложений на протяжении всей "сессии".

0 голосов
/ 28 мая 2019

Базовое понимание:

В архитектуре клиент-сервер

Сервер:> который обслуживает запросы.

Клиент:> Который потребляет услугу.

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

Они получили свои имена в зависимости от места их использования.

Web server :> serve web content
           :> Like Html components
           :> Like Javascript components
           :> Other web components like images,resource files
           :> Supports mainly web protocols like http,https.
           :> Supports web Request & Response formats.

Использование -

      we require low processing rates,

      regular processing practices involves.

Например: все плоские серверы, как правило, доступны готовые, которые обслуживают только веб на основе контента.

Application server :> Serve application content/component data(Business data).
                   :> These are special kind which are custom written 
                      designed/engineered for specific
                      purpose.some times fully unique in 
                      their way and stands out of the crowd. 

                   :> As these serves different types of data/response contents
                   :> So we can utilize these services for mobile client,web 
                      clients,intranet clients. 
                   :> Usually application servers are services offered on different 
                      protocols.    
                   :> Supports different Request& Response formats.

Использование -

      we require multi point processing,

      specialized processing techniques involves like for AI.

Например: серверы карт Google, серверы поиска Google, серверы Google документов, Microsoft 365 серверы, серверы компьютерного зрения Microsoft для AI.

Мы можем принять их как уровни / иерархии в 4-уровневой / n-уровневой архитектуре.

 So they can provide 
                    load balancing,
                    multiple security levels,
                    multiple active points,
                    even they can provide different request processing environments.

Пожалуйста, перейдите по этой ссылке для аналогии со стандартной архитектурой:

https://docs.microsoft.com/en-us/previous-versions/msp-n-p/ee658120(v%3dpandp.10)

0 голосов
/ 13 мая 2018

ИМО, в основном это разделение проблем.

С чисто технической точки зрения вы можете делать все (веб-контент + бизнес-логика) на одном веб-сервере. Если вы сделаете это, то информация будет встроена в запрашиваемый контент HTML. Какое будет влияние?

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

0 голосов
/ 31 октября 2009

Это зависит от конкретной архитектуры. Некоторые серверы приложений могут использовать веб-протоколы изначально (XML / RPC / SOAP через HTTP), поэтому технических различий мало. Обычно веб-сервер ориентирован на пользователя и обслуживает разнообразный контент по HTTP / HTTPS, тогда как сервер приложений не ориентирован на пользователя и может использовать нестандартные или не маршрутизируемые протоколы. Разумеется, в случае RIA / AJAX эта разница может быть еще более затуманена, поскольку клиентам, использующим определенные службы удаленного доступа, предоставляется только контент, отличный от HTML (JSON / XML).

...