![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
rene |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 31.10.2006 Где: г. Висагинас, р. Литва Репутация: нет Всего: нет |
Например, такие продукты GlassFish, WebSphere, JBoss, Zope называют серверами приложений.
Как вы считаете, можно ли назвать веб-сервер+PHP сервером приложений? Несколько соображений на эту тему: 1) Сервером приложений можно считать такое серверное ПО, которое обеспечивает выполнение какой-либо логики на стороне сервера. Тогда Apache+PHP - сервер приложений. 2) Сервером приложение можно называть ПО, которое обеспечивает выполнение приложения постоянно, т.е. программы там запускаются и "живут" до тех пор пока не будут остановлены. Тогда Apache+PHP не сервер приложений. Так как в PHP приложение живет во время обработки обращения клиента: веб-сервер вызыват модуль интерпретатора PHP, тот выполянет программу, результат отдает веб-серверу и на этом жизнь программы заканчивается. Складывается чувство, что когда IBM, Sun или Bea хотят продать что-то дорогое, то они называют это солидным словом "сервер приложений", а когда речь идет о пролетарском Apache+PHP, то это просто "выполнение сценариев на стороне сервера". Понятно, что в продукты именитых компаний входит больше чем интерпретатор или среда выполнения какого-либо языка, там еще развитая инфраструктура, папример : свой API, набор библиотек, каркас и т.д. |
|||
|
||||
Vasay |
|
||||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 1 Всего: 73 |
Нет нельзя.
Впринципе, логично, и я бы с этим согласился, НО! Тот же TomCat, умеющий выполнять приложение постоянно, лишь контейнер сервлетов. Если верить википедии
GlassFish, WebSphere Community Edition, JBoss - бесплатны и открыты. Чем не "пролетарские" решения? Кстати, есть вполне дешевые хостинги с GlassFish (правда не в России). Впринципе, для разработки сайтов (порталов и т.д.), App сервер не нужен. Можно ограничится TomCat-ом. с ним великолепно работает Spring, можно использовать различные ORM библиотеки... -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
||||||||
|
|||||||||
rene |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 31.10.2006 Где: г. Висагинас, р. Литва Репутация: нет Всего: нет |
Почему сервлет - не приложение, работающее на сервере? Сервлет - определение придуманное Sun, как и контейнер сервлетов. Если верить википедии
Предлагаю взглянуть на вопрос шире, а не в рамках определения J2EE сервера приложений. Так сказать, концептуально. |
||||
|
|||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 1 Всего: 73 |
rene,
Ну попробуйте ![]() -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
rene |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 31.10.2006 Где: г. Висагинас, р. Литва Репутация: нет Всего: нет |
Мне больше нравится определение в английском варианте на wikipedia. An application server, in an n-tier architecture, is a server that hosts an API to expose business logic and business processes for use by third-party applications. Сервер приложений в n-уровневой архитектуре это такой сервер, который размещает у себя некое API, предоставляющее бизнес-логику и бизнес-процессы для использования третьей стороной. Вооружившись этим определением мы можем сказать: Всюду, где есть среда в которой происходит обработка бизнес-логики в рамках моделируемых бизнес-процессов с использованием какого-либо прикладного языка программирования можно говорить о сервере приложений. При этом услугами приложения работающего этой среде могут пользоваться несколько клиентов. Да, это широкое определение, под которое попадет и PHP+Apache и cgi-скрипты написанные на чем угодно. То, что в случае PHP код приложения интерпретируется для каждого запроса, а затем выгружается из памяти можно считать таким способом реализации выполнения приложения на сервере. |
||||
|
|||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 1 Всего: 73 |
rene,
Хорошее определение. Я понял его так: Согласно ему сервер приложений должен иметь в себе реализацию некоторой (стандартной, часто встречающейся) бизнес логики. И предоставлять API для того, что бы сторонние (third-party) приложения, запущенные на сервере, могли эту бизнеслогику использовать. Т.е. разрабатывая приложение Вам не нужно ручками реализовывать - работу с сессиями, транзакциями, работу с контролем доступа, рабоду с БД...., все это уже реализовано на сервере приложений, Вам нужно лишь воспользоваться соответствующим API. Согласно этому определению ни апач (даже с php), ни томкэт серверами приложений не являются. Это сообщение отредактировал(а) Vasay - 24.4.2009, 01:06 -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
rene |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 31.10.2006 Где: г. Висагинас, р. Литва Репутация: нет Всего: нет |
Vasay,
Позвольте с Вами не согласиться. Бизнес-логика не может быть общей, она различна в каждом проекте автоматизации какой либо прикладной области. Вот что понимать под "третьей стороной" - это вопрос. Ведь этой "третьей стороной" как раз и может быть та часть ПО, что разработана для какого-либо конкретного проекта. Т.е. весь проект по решению какой-либо задачи представляет собой общую часть заключающую в себе бизнес-логику и компоненты являющиеся клиентами этой бизнес-части проекта. Ничто не мешает в дальнейшем добавить других клиентов для бизнес-части проекта. Эти клиенты не являются пользователями-людьми и могут функционировать не на этом же сервере
Вот тут то мы наверно и приближаемся к некому негласному соглашению, согласно которому нужен какой-то набор возможностей программного комплекса, чтоб его назвали сервером-приложений. Ко сожалению перечня того, что должно входить в этот набор я не видел. Добавлено через 7 минут и 55 секунд Определение от МС: Application Server: Frequently Asked Questions Q. What is an application server? A. We define the category of application server as the “system software that underlies the server-based execution of shared business applications.” Just as a file server delivers files to many users, an application server makes applications—often custom-built applications—available to multiple concurrent users. В. Что такое сервер приложений? О. Мы определяем сервер приложений как, "системное ПО, которое обеспечивает серверное выполнение разделяемых бизнес-приложений". Как файл-сервер обеспечивает доступ к файлам многим пользователям, так и сервер приложений делает приложения(часто сделанные по заказу) одновременно доступными многим пользователям. |
||||
|
|||||
rene |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 31.10.2006 Где: г. Висагинас, р. Литва Репутация: нет Всего: нет |
Определение от менеджера Bea
Аpplication server Also called an appserver. A program that handles all application operations between users and an organization's backend business applications or databases. Application servers are typically used for complex transaction-based applications. To support high-end needs, an application server has to have built-in redundancy, monitors for high-availability, high-performance distributed application services and support for complex database access. See the Server Types page in the quick reference section of Webopedia for a comparison of server types. (Many thanks go out to Paul White, Product Marketing Manager EMEA, BEA Systems, for providing this updated definition.) Программа, которая берет на себя все прикладные действия между пользователями и какими-либо оконечными бизнес-приложениями и базами данных. Сервера приложений обычно используются для сложных приложений, основанных на транзакциях. Для поддержки высокоуровневых потребностей сервер приложений имеет встроенную поддержку избыточности, производит мониторинг обеспечивания доступности, имеет высокопроизводительные распределенные сервисы и поддерживает сложные способы доступа к БД. |
|||
|
||||
Vasay |
|
||||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 1 Всего: 73 |
rene,
third-party applications - это ваше приложение, запущенное на сервере. Т.е. для сервера, оно стороннее. А тут я с вами полностью согласен:
Если речь идет о Java, то такой перечень есть и называется "спецификация j2ee" Но у других производителей ПО (таких как MC) может быть другой взгляд на данный вопрос. -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
||||||||
|
|||||||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |