Из всего прочитанного в интернете мне удалось понять, что существуют 2 вида серверов: статические и динамические. Статические сервера включают в себя «сервер-железо» и «сервер-ПО», которое работает с HTTP и URL. Динамические сервера содержат все то, что содержат статические + сервер приложения и базу данных. Вся инфа отсюда.
То есть по сути динамический сервер называется таким из-за работы сервер приложения, который может изменять файлы, передаваемые по HTTP, налету. У меня возник вопрос. Получается, что сервер приложения — это какой-то код, который позволяет обрабатывать файлы. Но судя по этой цитате, это не совсем так (вряд ли код может содержать веб-сервер): Источник
Сервер приложений может содержать веб-серверы, поэтому он считается более мощным, чем веб-сервер.
Здесь мне скорее всего не понятно само строение или структура этого сервера приложения. Для чего и каким образом он содержит этот веб-сервер? Также не понятна эта фраза:
Проверяю ПК Стримера на прочность ДИНАМИТОМ! Майнкрафт Троллинг
Сервер приложений действует как набор компонентов, доступных разработчику программного обеспечения через API (интерфейс прикладного программирования), определённый самой платформой.
Получается, что если API поддерживает взаимодействие 2-ух программ, то в этом случае API может поддерживать взаимодействие между сервером приложения и какой-то любой другой программой. А всегда ли API поддерживает работу с сервером приложений, API работает только с сервером приложений?
Отслеживать
задан 1 ноя 2021 в 18:03
1,869 7 7 серебряных знаков 20 20 бронзовых знаков
я не хочу умничать, но, мне кажется, Вы читаете какие то не те источники. Не хочу катить бочку на авторитетную Википедию и т.п., но в общем здесь идёт «спор о терминах». Посмотрите на это с другой стороны: Сервер — это любая «штука», которая обслуживает «запросы». Вам компьютер ответил на ping? О! Это — сервер!
1 ноя 2021 в 18:28
А то, что Вы пишете про статическиие и динамические сервера — обычно, мне кажется, называется «статическим контентом» и «динамическим контентом». И — еще, если уточнить, что речь идет о HTTP — серверах, всё становится на свои места. Но я всё же советую Вам разбить вопрос на несколько вопросов, так как в текущем виде на него трудно ответить
1 ноя 2021 в 18:38
Сервер — это программа, принимающая входящие запросы от клиентов. Веб-сервер — программа, принимающая входящие запросы по протоколу http. Также сервером называют компьютер, основным назначением которого является запуск программ-серверов. Всю остальную «серверную» терминологию я считаю малополезной шелухой
1 ноя 2021 в 19:29
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
я рискну ответить на вопрос, хотя, скорее всего, это не будет полным и законеченым ответом.
Мне кажется, что то непонимание, которое у Вас есть, происходит от обилия терминов и их «исторического напластования»
Зашёл на политический сервер в майнкрафте
- То, что Вы называете «статическиие и динамические сервера» — обычно, мне кажется, называется «статическим контентом» и «динамическим контентом».
- то, что в тексте назывется серверами приложений — нужно понимать просто как «веб сервер без морды», как бы грубо это ни звучало. Это — программа, которая по HTTP принимает запросы и по HTTP же отвечает. Обычно это называют REST — протоколом (Representational state transfer)
Еще один распространённый термин для «серверов приложений» — это «веб-служба».
А всегда ли API поддерживает работу с сервером приложений?
Сам термин «сервер приложений» — это некая историческая шелуха.
Поясню свою мысль. На этапе зарождения WEB’а возможности написать файл с гиперссылками и отдавать его в примитивный браузер типа мозаики в общем всем хватало.
Но хотелось «динамики» например, счетчика числа посетителей на странице. Для этого использовался CGI (Common Gateway Interface).
Фактически, это означало, что в ответ на запрос из браузера на сервере выполнится программа, и результат её выполнения будет показан в браузере.
Чтобы «хорошо продавать» эту возможность ( а веб-сервера были не только бесплатными open source, но иногда и очень даже платными, типа Microsoft IIS и IBM WebSphere ) — был придуман маркетинговый термин «сервер приложений».
Который означал не более и не менее, чем возможность в ответ на запрос пользователя выполнить некий код, который на этот запрос ответит. В этом была разница с сервером, который умеет только «тупо хостить файлы»
Далее — под API, наверное, следует понимать «взаимодействие по заранее согласованному протоколу», но применительно к HTTP — серверам это в 99% случаев следует читать как REST API.
Объясню на примере. Пускай у меня есть база данных с ценной информацией.
Я могу сделать веб — сервер, который на своих страницах будет показывать эту информацию по запросам пользователя.
А могу предоставить интерфейс к своей базе данных, и многие — многие сервера в интернете начнут показывать эту информацию на своих страницах, обращаясь за самой информацией ко мне. По API. При этом у меня может вообще не быть «веб сервера, на котором есть страницы для просмотра посетителями».
Я надеюсь, что я смог — в этом коротком ответе — помочь Вам разобраться в терминах. Но если есть уточняющие вопросы — пишите!
Дополнение
я перечитал Ваш вопрос, и решил немного дополнить ответ вот в какой части:
Сервер приложений может содержать веб-серверы, поэтому он считается более мощным, чем веб-сервер.
Здесь мне скорее всего не понятно само строение или структура этого сервера приложения. Для чего и каким образом он содержит этот веб-сервер?
Я попытаюсь «на пальцах» рассказать, что имется в виду. Для этого посмотрим на стуктуру того, что вообще есть во всех этих серверах.
- Есть программа, которая реализует HTTP — протокол. Она просто умеет получать HTTP-запрос и в ней есть модуль, который пытается на это запрос ответить.
- Обычно эту программу просто «привязывают» к файловой системе WEB-сервера, и «модуль отвечания» работает по такому алгоритму: «К тебе пришел запрос? Посмотри, есть ли на диске файл, название которого соответствует запросу. Если есть — выдай этот файл в ответ на запрос, если нет — покажи страницу с 404-й ошибкой». Это — то что называется «статический контент», или «статический сервер» (как бы не передёргивало меня от этого термина)
- Что такое «динамический сервер»? Это когда «модуль отвечания» в программе, которая обслуживает запросы, учат еще одному фокусу: «. а вот если к тееб придёт запрос определенного вида — то вместо отдачи файла пользователю выполни вот эту программу, и отдай пользоваетлю результаты её выполнения».
вот именно в этом смысле «Сервер приложений может содержать веб-серверы» — они имеют в виду, что, для того, чтобы принять запрос и отправить ответ — нужен модуль работы с HTTP протоколом, и называют его «веб-сервер». В этом смысле «динамический сервер» собержит «веб-сервер» в своём составе.
Отслеживать
ответ дан 1 ноя 2021 в 18:57
10.8k 1 1 золотой знак 19 19 серебряных знаков 40 40 бронзовых знаков
вот именно в этом смысле «Сервер приложений может содержать веб-серверы» — они имеют в виду, что, для того, чтобы принять запрос и отправить ответ — нужен модуль работы с HTTP протоколом, и называют его «веб-сервер» а что тогда содержит веб-сервер для работы с HTTP (ПО сервер, как говорится на MDN) при отсутствии сервера приложений (т.е. если говорить про статический контент, статический сервер)? Сервер-железо?
1 ноя 2021 в 19:53
1 ноя 2021 в 19:56
вы наверное не поняли моего вопроса)) вопрос был в том, где находится программа по работе с HTTP — на железе или на сервере приложений? Хотя, наверное, и там, и там, в любом случае надо же сначала обработать запрос (обрабатывает, как я понимаю, железо), а уже потом выдать ответ (обрабатывает, как я понимаю, или железо, или сервер приложения). Я правильно понимаю?
1 ноя 2021 в 20:06
1 ноя 2021 в 20:14
1 ноя 2021 в 20:57
Что/кто такой(-ое) «сервер»?
англ: serve — служить; +er —> server — тот, кто обслуживает.
Простыми словами «сервер» это то, что обслуживает (исполняет) запросы. Исполнитель.
Исполнитель (сервер) — это приложение. Однако этим же «словом» также называют железо на котором работает это приложение(-я). Да, на одном железе (сервере) могут быть запущены несколько приложений (серверов).
Деды от «айти» не перевели, в своё время, теперь вот такие вопросы.
Далее по наследию от дедов.
«Статичный, статический»
англ (прил): static — неподвижный.
«Динамичный, динамический и прочее динамо-«
англ (прил): dynamic — действующий, работающий, живой.
«Веб»
англ: web — паутина, сеть.
Соединяем всё до кучи.
Веб-сервер — исполнитель, который обрабатывает сетевые запросы, созданные по тем или иным правилам (договорённостям) (англ: protocol): TCP/IP, HTTP и т.д.
Сервер-приложений — исполнитель, на котором выполняется какое-либо прикладное приложение.
Статический-сервер — исполнитель, который также является ещё и веб-сервером, в задачи которого входит выдать те или иные данные, которые уже имеются у него. Т.е. ничего нового он при обращении к нему не создаёт. Например, у него есть набор изображений, вот, при обращении к нему, он и будет выдавать лишь эти изображения.
Динамический-сервер — исполнитель, который может быть веб-сервером, а может и не быть им, но в любом случае он является сервером-приложений. Если с ним можно общаться по сети, то значит это веб-сервер, если его задача, например, просто вычислять простые числа, то для этого никакой веб не нужен.
Ну и несколько слов про API исполнителя приложений.
К примеру, возьмём самовоз (англ: auto- (само-); mobile (подвижный)). У него есть рычаг переключения передач. Так вот допустимые положения для этого рычага являются API, т.е. способами для переключения передач, которые предоставлены разработчиками самовоза для этих нужд.
Наглядно положения передач можно описать так:
- 1-я: /влево/вверх
- 2-я: /влево/вниз
- ..
- 5-я: /вправо/вверх
- Задняя: /вправо/вниз
Для исполнителя приложений всё тоже самое. Есть набор мест (положений) при обращении к которым (с указанием дополнительных данных, если это необходимо) будет выполнено то или иное действие этим самым приложением. Например:
создать заметку: /createArticle, /create-article, /создатьЗаметку, /заметку-создать (выбор названия всецело зависит от разработчиков приложений).
Источник: ru.stackoverflow.com
Глобальные сети
Глобальные сети предоставляют пользователям разнообразные услуги. ГВС позволяют работать с распределенными базами данных, обмениваться письмами с помощью электронной почты, сообщениями с помощью телеконференций, беседовать в реальном масштабе времени, пересылать файлы и т. д. Каждая услуга (иногда говорят: служба, сервис) работает по определенным правилам (протоколам).
Для реализации каждой сетевой услуги требуются своя программа-сервер и своя программа-клиент. Например, существуют почтовые серверы и клиенты, серверы и клиенты телеконференций (новостей).
В то же время современные браузеры (программы-навигаторы, исследователи, обозреватели) постепенно берут на себя функции нескольких отдельных служб глобальной сети и становятся «универсальными» клиентами.
Термин «сервер» имеет второе значение.
Сервером называют также и компьютер, на котором установлены программы-серверы. На одном компьютере-сервере могут работать сразу несколько программ-серверов. Серверы постоянно работают, они снабжены устройствами бесперебойного электропитания. Чаще всего мы будем понимать под термином «сервер» некий компьютер.
Глобальная сеть Интернет представляет собой совокупность узлов, содержащих коммутационное оборудование и серверы. Узлы объединяются между собой каналами связи.
Каждый узел содержит один или несколько мощных компьютеров-серверов, которые работают чаще всего под управлением операционной системы UNIX. Такой узел порой называют хостом.
Управляет узлом его собственник — организация, которая называется провайдером или поставщиком услуг Интернета. В крупных городах число провайдеров может достигать нескольких десятков.
К узлам подключаются пользователи — локальные вычислительные сети и отдельные клиенты.
Провайдеров можно условно разделить на международных, национальных и региональных. Скорость передачи информации между первичными провайдерами составляет несколько мегабит в секунду. К первичным провайдерам подключаются региональные (вторичные) провайдеры.
Зеркало—сервер, который является копией другого популярного, но далеко расположенного сервера. Зеркало используется для снижения нагрузки в сети и повышения скорости передачи информации. Содержимое зеркала периодически обновляется.
Прокси-сервер — компьютер, который используется для снижения нагрузки в сети и повышения быстродействия. На прокси-сервере непродолжительное время хранится информация, к которой пользователи проявляют повышенный интерес. Если какой-либо пользователь недавно просматривал Web-страницу, которую решил посмотреть второй пользователь, то второму пользователю она будет передана с прокси-сервера. Внешне второму пользователю будет казаться, что установлена связь с первоисточником информации.
Прокси-сервером может быть любая ЭВМ, на которую установлена программа прокси-сервер. Информация на прокси-сервере стирается по мере угасания интереса к ней и заменяется новой, более актуальной.
Интернет объединяет сети, работающие по разным правилам. Для согласования этих правил (протоколов) служат устройства — шлюзы.
Брандмауэр — программно-аппаратное средство (межсетевой экран), которое предотвращает несанкционированный доступ (вход) в защищаемую сеть или к отдельному компьютеру.
Межсетевой экран выполняет свои функции, контролируя все информационные потоки между локальной и глобальной сетями, работая как некоторая «информационная мембрана». Экран можно представлять себе как набор фильтров, анализирующих проходящую через них информацию. На основе заложенных алгоритмов брандмауэр принимает решение: пропустить эту информацию или отказать в ее пересылке.
Кроме того, брандмауэр фиксирует все незаконные попытки доступа к информации и сигнализирует о ситуациях, требующих немедленной реакции (поднимает тревогу).
Следует заметить, что Интернет — подвижная, быстро изменяющаяся структура, конфигурация которой зависит от множества факторов. Поэтому нарисовать достоверную схему соединения множества узлов принципиально невозможно. Соединения могут самыми разнообразными: региональные провайдеры могут соединяться между собой, зеркала могут устанавливаться в любом месте, отдельные пользователи могут подключаться к любому провайдеру и т. д.
Бурный рост услуг, предоставляемых в Интернете, приводит к перегрузке узлов и каналов связи, что снижает скорость и надежность передачи информации. При этом каналы связи развиваются крайне неравномерно и в основном там, где государство и частные фирмы считают нужным вкладывать в это средства.
Источник: studwood.net
Глобальные вычислительные сети
Глобальные сети (как и локальные) состоят из компьютеров, соединенных каналами связи. Глобальные вычислительные сети (ГВС) всего мира объединены между собой с помощью Интернета.
Для работы в ГВС пользователю необходимо иметь соответствующее аппаратное и программное обеспечение. В простейшем случае из аппаратных средств нужно дополнительно установить модем, с помощью которого осуществляется связь по телефонной линии (например, из квартиры). Заметим, что современные ЭВМ оснащены сетевыми картами, и при подключении к сети по выделенному каналу не нужны дополнительные аппаратные средства.
Программное обеспечение делится на два класса:
программы-серверы, размещенные на том узле сети, который обслуживает компьютер пользователя;
программы-клиенты, которые находятся на компьютере пользователя и пользуются услугами сервера.
Глобальные сети предоставляют пользователям разнообразные услуги. ГВС позволяют работать с распределенными базами данных, обмениваться письмами с помощью электронной почты, сообщениями с помощью телеконференций, беседовать в реальном масштабе времени, пересылать файлы и т. д. Каждая услуга (иногда говорят: служба, сервис) работает по определенным правилам (протоколам).
Для реализации каждой сетевой услуги требуются своя программа-сервер и своя программа-клиент. Например, существуют почтовые серверы и клиенты.
В то же время современные браузеры (программы-навигаторы, исследователи, обозреватели) постепенно берут на себя функции нескольких отдельных служб глобальной сети и становятся «универсальными» клиентами. Термин «сервер» имеет второе значение.
Сервером называют также и компьютер, на котором установлены программы-серверы. На одном компьютере-сервере могут работать сразу несколько программ-серверов. Чаще всего мы будем понимать под термином «сервер» некий компьютер.
Глобальная сеть Интернет представляет собой совокупность узлов, содержащих коммутационное оборудование и серверы. Узлы объединяются между собой каналами связи. Каждый узел содержит один или несколько мощных компьютеров-серверов, которые работают чаще всего под управлением операционной системы UNIX. Такой узел порой называют хостом.
Управляет узлом его собственник — организация, которая называется провайдером (от англ, provide — обеспечивать) или поставщиком услуг Интернета. К узлам подключаются пользователи — локальные вычислительные сети и от дельные компьютеры-клиенты. Среди наиболее известных провайдеров России можно выделить: GlasNet, «Relcom», «Демос», Sovam Teleport, Sprint-Россия.
В США крупнейшими провайдерами считаются CompuServe и AmericaOnLine (AOL). Провайдеров можно условно разделить на международных, национальных и региональных. В России национальными провайдерами (их иногда называют первичными провайдерами) являются, например, GlasNet, «Relcom», «Демос». К первичным провайдерам подключаются региональные (вторичные) провайдеры.
Примерная схема соединений показана на рисунке, из которого видно, что компьютеры пользователей могут подключаться к глобальной сети, как через ЛВС, так и непосредственно подсоединяться к любому провайдеру.
31211 31212 —— 42211
На рисунке приняты следующие обозначения:
М — международный провайдер
Н — национальный провайдер
Р — региональный провайдер
ЛВС — локальная вычислительная сеть
Обсудим некоторые частоиспользуемые термины .
Зеркало — сервер, который является копией другого популярного, но (как правило) далеко расположенного сервера. Зеркало используется для снижения нагрузки в глобальной сети и повышения скорости передачи информации. Содержимое зеркала периодически обновляется. Если, например, пользователю компьютера 22111 требуется получить информацию с сервера Н11, то он ее получает с близко расположенного зеркала Зер1. При этом содержимое зеркала практически совпадает с содержимым сервера НИ.
Прокси-сервер — компьютер, который используется для снижения нагрузки в сети и повышения быстродействия. На прокси-сервере непродолжительное время хранится информация, к которой пользователи проявляют повышенный интерес.
Если какой-либо пользователь недавно просматривал Web-страницу, которую решил посмотреть второй пользователь этой же локальной сети, то второму пользователю она будет передана с прокси-сервера. Внешне второму пользователю будет казаться, что установлена связь с первоисточником информации. Предположим, что пользователь ЭВМ 1111 недавно получил файл с сервера Р421.
Если эту же информацию пытается получить пользователь компьютера 1112, то она поступает с близко расположенного ПС1. Прокси-сервером может быть любая ЭВМ, на которую установлена программа прокси-сервер. Информация на прокси-сервере стирается по мере угасания интереса к ней и заменяется новой, более актуальной.
Шлюз — программно-аппаратное средство, предназначенное для соединения двух разнородных сетей, работающих по разным правилам (протоколам).
Серьезной проблемой при работе в сети является защита информации от несанкционированного доступа. По этой причине локальные сети банков, оборонных предприятий, коммерческих фирм защищают от проникновения в них со стороны Интернета. Для этих целей используют брандмауэр.
Брандмауэр — программно — аппаратное средство (межсетевой экран), которое предотвращает несанкционированный доступ (вход) в защищаемую сеть. Межсетевой экран контролирует все информационные потоки между локальной и глобальной сетями, работая как некоторая «информационная мембрана».
Экран можно представлять себе как набор фильтров, анализирующих проходящую через них информацию. На основе заложенных алгоритмов брандмауэр принимает решение: пропустить эту информацию или отказать в ее пересылке. Кроме того, брандмауэр фиксирует все незаконные попытки доступа к информации и сигнализирует о ситуациях, требующих немедленной реакции (поднимает тревогу).
Следует заметить, что Интернет -подвижная, быстро изменяющаяся структура, конфигурация которой зависит от множества факторов. Поэтому нарисовать достоверную схему соединения множества узлов принципиально невозможно. Соединения могут быть самыми разнообразными: региональные провайдеры могут соединяться между собой, зеркала могут устанавливаться в любом месте, отдельные пользователи могут подключаться к любому провайдеру и т. д. Бурный рост услуг, предоставляемых в Интернете, приводит к перегрузке узлов и каналов связи, что снижает скорость и надежность передачи информации. При этом средства телекоммуникаций развиваются крайне неравномерно и, в основном, они появляются там, где государство и частные фирмы считают нужным вкладывать средства в их развитие.
Определение пути, по которому будет передано сообщение, осуществляется с помощью специального устройства — маршрутизатора.
Маршрутизатор (Router) — устройство, которое работает с несколькими каналами, направляя в какой-нибудь из них очередной блок (пакет) данных. Маршрутизатор выбирает канал по адресу, указанному в заголовке пришедшего сообщения (пакета). Для каждого поступающего пакета маршрутизатор принимает индивидуальное решение о пути следования пакета к сети, в которой находится машина-адресат.
Процедура выбора пути передачи информации называется маршрутизацией. Проблема выбора маршрута осложняется тем, что географически самый короткий путь не всегда является самым лучшим. Часто критерием при выборе маршрута является время передачи данных по этому маршруту.
Оно зависит от пропускной способности каналов связи и интенсивности нагрузки (трафика), которая может изменяться с течением времени. Некоторые алгоритмы маршрутизации пытаются приспособиться к изменению нагрузки, в то время как другие принимают решения на основе средних показателей за длительное время.
Выбор маршрута может осуществляться и по другим критериям, например, надежности передачи информации. Между конечными компьютерами может быть несколько десятков узлов, маршрутизаторов, множество промежуточных физических сетей различных типов, но программа-клиент будет воспринимать этот конгломерат как единую физическую сеть.
Образно маршрутизатор можно сравнить с телевизионной камерой, установленной на вертолете. С помощью такой камеры хорошо видны дороги и потоки движущихся автомобилей. Такой общий вид позволяет выбрать водителю наиболее свободный и удобный (иногда обходной) путь движения транспорта. Таким образом, протокол IP выполняет функции маршрутизации, выбирая нужный путь для передачи сообщения в паутине сетей. На каждом узле маршрутизатор определяет, в каком направлении передать поступившее сообщение.
Краткие итоги
Глобальные сети отличаются от локальных сетей значительно большей протяженностью, отсутствием единого владельца всех каналов связи, которые связывают ГВС между собой.
Интернет — это совокупность множества глобальных сетей (сеть сетей).
Сервер — компьютер, который предоставляет услуги другому компьютеру-клиенту.
Источник: ozlib.com