В вычислениях , сервер является частью компьютерного аппаратного или программного обеспечения ( компьютерной программы ) , которая обеспечивает функциональные возможности для других программ или устройств, называемых « клиентов ». Эта архитектура называется клиент-серверной моделью . Серверы могут предоставлять различные функции, часто называемые «услугами», такие как совместное использование данных или ресурсов между несколькими клиентами или выполнение вычислений для клиента. Один сервер может обслуживать несколько клиентов, а один клиент может использовать несколько серверов. Клиентский процесс может работать на том же устройстве или может подключаться по сети к серверу на другом устройстве. [1]Типичные серверы - это серверы баз данных , файловые серверы , почтовые серверы , серверы печати , веб-серверы , игровые серверы и серверы приложений . [2]
Сегодня клиент-серверные системы чаще всего реализуются (и часто идентифицируются) по модели запрос-ответ : клиент отправляет запрос на сервер, который выполняет какое-то действие и отправляет ответ клиенту, обычно с результатом или подтверждением. . Обозначение компьютера как «оборудование серверного класса» означает, что он предназначен для работы на нем серверов. Это часто означает, что он более мощный и надежный, чем стандартные персональные компьютеры , но в качестве альтернативы большие вычислительные кластеры могут состоять из множества относительно простых заменяемых серверных компонентов.
История
Использование слова сервера при вычислении происходит от теории массового обслуживания , [3] , где она относится к середине 20 - го века, будучи прежде всего используется в Кендалл (1953) (вместе с «сервис»), документ , который ввел обозначения Кендалла . В более ранних статьях, таких как Erlang (1909) , используются более конкретные термины, такие как «[телефонные] операторы».
В области вычислений термин «сервер» относится, по крайней мере, к RFC 5 (1969) [4], одному из самых ранних документов, описывающих ARPANET (предшественник Интернета ), и противопоставляется «пользователю», различающему два типа хоста : «сервер- хост »и« пользователь-хост ». Использование «обслуживающего» также восходит к ранним документам, таким как RFC 4, [5], противопоставляющим «обслуживающий хост» и «использующий хост».
В жаргоне File определяет « сервер » в обычном смысле этого процесса , выполняющих услуги для запросов, как правило , дистанционное, с 1981 ( 1.1.0 чтения) версии:
СЕРВЕР № Разновидность DAEMON, выполняющего службу для запрашивающей стороны, которая часто работает на компьютере, отличном от того, на котором запущен сервер.
Операция
Строго говоря, термин сервер относится к компьютерной программе или процессу (запущенной программе). Через метонимию это относится к устройству, используемому (или предназначенному для) запуску одной или нескольких серверных программ. В сети такое устройство называется хостом . Помимо server , часто используются слова serve и service (как глагол и как существительное соответственно), хотя servicer и servant - нет. [a] Слово « служба» (существительное) может относиться к любой абстрактной форме функциональности, например к веб-службе . В качестве альтернативы, это может относиться к компьютерной программе, которая превращает компьютер в сервер, например, к службе Windows . Первоначально используемый как «серверы обслуживают пользователей» (и «пользователи используют серверы») в смысле «подчиняться», сегодня часто говорят, что «серверы обслуживают данные» в том же смысле, что и «отдавать». Например, веб-серверы «обслуживают [вверх] веб-страницы для пользователей» или «обслуживают их запросы».
Сервер является частью модели клиент-сервер ; в этой модели сервер обслуживает данные для клиентов . Характер связи между клиентом и сервером - это запрос и ответ . Это контрастирует с одноранговой моделью, в которой отношения являются взаимными по требованию. В принципе, любой компьютеризированный процесс, который может быть использован или вызван другим процессом (особенно удаленно, в частности, для совместного использования ресурса), является сервером, а вызывающий процесс или процессы - клиентом. Таким образом, любой компьютер общего назначения, подключенный к сети, может размещать серверы. Например, если файлы на устройстве используются каким-либо процессом совместно, этот процесс является файловым сервером . Точно так же программное обеспечение веб-сервера может работать на любом подходящем компьютере, и поэтому на портативном или персональном компьютере может быть размещен веб-сервер.
Хотя запрос – ответ является наиболее распространенной схемой клиент-сервер, существуют и другие, например шаблон публикации – подписки . В шаблоне публикации-подписки клиенты регистрируются на сервере pub-sub, подписываясь на определенные типы сообщений; эта первоначальная регистрация может быть сделана по запросу-ответу. После этого сервер pub-sub пересылает совпадающие сообщения клиентам без каких-либо дополнительных запросов: сервер отправляет сообщения клиенту, а не клиент получает сообщения с сервера, как в запросе-ответе. [6]
Цель
Роль сервера заключается в совместном использовании данных, а также в совместном использовании ресурсов и распределении работы. Серверный компьютер также может обслуживать свои собственные компьютерные программы; в зависимости от сценария, это может быть часть транзакции « услуга за услугу» или просто техническая возможность. В следующей таблице показано несколько сценариев использования сервера.
Тип сервера | Цель | Клиенты |
---|---|---|
Сервер приложений | Размещает веб-приложения (компьютерные программы, запускаемые в веб-браузере ), позволяющие пользователям в сети запускать и использовать их без необходимости устанавливать копию на свои собственные компьютеры. В отличие от названия, эти серверы не обязательно должны быть частью всемирной паутины ; подойдет любая локальная сеть . | Компьютеры с веб-браузером |
Сервер каталога | Поддерживает индекс или оглавление информации, которую можно найти в большой распределенной сети, такой как компьютеры, пользователи, файлы, совместно используемые на файловых серверах, и веб-приложения. Серверы каталогов и серверы имен являются примерами серверов каталогов. | Любая компьютерная программа, которой необходимо найти что-то в сети, например, член домена, пытающийся войти в систему, почтовый клиент, ищущий адрес электронной почты, или пользователь, ищущий файл. |
Коммуникационный сервер | Поддерживает среду, необходимую для одной конечной точки связи (пользователя или устройств), чтобы найти другие конечные точки и связаться с ними. Он может включать или не включать в себя каталог конечных точек связи и службу обнаружения присутствия, в зависимости от параметров открытости и безопасности сети. | Конечные точки связи (пользователи или устройства) |
Вычислительный сервер | Распределяет огромные объемы вычислительных ресурсов, особенно ЦП и оперативную память , по сети. | Вероятно, любая компьютерная программа, которой требуется больше мощности процессора и оперативной памяти, чем может себе позволить персональный компьютер. Клиент должен быть подключенным к сети компьютером; в противном случае не было бы модели клиент-сервер. |
Сервер базы данных | Поддерживает и совместно использует любую форму базы данных (организованные коллекции данных с предопределенными свойствами, которые могут отображаться в таблице) по сети. | Электронные таблицы , бухгалтерское программное обеспечение , программное обеспечение для управления активами или практически любая компьютерная программа, которая использует хорошо организованные данные, особенно в больших объемах |
Факс-сервер | Совместное использование одного или нескольких факсимильных аппаратов в сети, что устраняет проблемы с физическим доступом | Любой отправитель или получатель факса |
Файловый сервер | Совместное использование файлов и папок , пространства для хранения файлов и папок или и того, и другого по сети | Сетевые компьютеры являются предполагаемыми клиентами, даже если локальные программы могут быть клиентами. |
Игровой сервер | Позволяет нескольким компьютерам или игровым устройствам играть в многопользовательские видеоигры | Персональные компьютеры или игровые консоли |
Почтовый сервер | Делает возможным общение по электронной почте так же, как почтовое отделение делает возможным общение по обычной почте. | Отправители и получатели электронной почты |
Медиа-сервер | Совместное использование цифрового видео или цифрового звука по сети посредством потоковой передачи мультимедиа (передача контента таким образом, чтобы полученные части можно было просматривать или прослушивать по мере их поступления, в отличие от загрузки всего файла с последующим его использованием) | Персональные компьютеры, обслуживаемые пользователями, с монитором и динамиком |
Сервер печати | Совместное использование одного или нескольких принтеров по сети, что устраняет проблемы с физическим доступом | Компьютеры, которым нужно что-то напечатать |
Звуковой сервер | Позволяет компьютерным программам воспроизводить и записывать звук индивидуально или совместно | Компьютерные программы одного и того же компьютера и сетевых клиентов. |
Прокси сервер | Действует как посредник между клиентом и сервером, принимая входящий трафик от клиента и отправляя его на сервер. Причины для этого включают контроль и фильтрацию контента, повышение производительности трафика, предотвращение несанкционированного доступа к сети или просто маршрутизацию трафика по большой и сложной сети. | Любой сетевой компьютер |
Виртуальный сервер | Совместное использование аппаратных и программных ресурсов с другими виртуальными серверами. Он существует только в том виде, в каком он определен в рамках специализированного программного обеспечения, называемого гипервизором . Гипервизор представляет виртуальное оборудование на сервер , как если бы он был реальным физическим устройством. [7] Виртуализация серверов позволяет создать более эффективную инфраструктуру. [8] | Любой сетевой компьютер |
веб сервер | Размещает веб-страницы . Веб-сервер - это то, что делает возможной всемирную паутину . У каждого веб-сайта есть один или несколько веб-серверов. Кроме того, на каждом сервере может размещаться несколько веб-сайтов. | Компьютеры с веб-браузером |
Почти вся структура Интернета основана на модели клиент-сервер . Корневые серверы имен высокого уровня , DNS и маршрутизаторы направляют трафик в Интернете. К Интернету подключены миллионы серверов, которые непрерывно работают по всему миру [9], и практически каждое действие, предпринимаемое обычным пользователем Интернета, требует одного или нескольких взаимодействий с одним или несколькими серверами. Есть исключения, которые не используют выделенные серверы; например, одноранговый обмен файлами и некоторые реализации телефонии (например, Skype до Microsoft ).
Аппаратное обеспечение
Требования к оборудованию для серверов сильно различаются в зависимости от назначения сервера и его программного обеспечения. Серверы чаще всего более мощные и дорогие, чем клиенты, которые к ним подключаются.
Поскольку доступ к серверам обычно осуществляется по сети, многие из них работают без присмотра без монитора компьютера или устройства ввода, аудиооборудования и интерфейсов USB . Многие серверы не имеют графического пользовательского интерфейса (GUI). Они настраиваются и управляются удаленно. Удаленное управление может осуществляться с помощью различных методов , включая консоль Microsoft Management Console (MMC), PowerShell , SSH и браузер на основе управления из внеполосных систем , такие как Dell, Идрак или НР Ил .
Большие серверы
Большие традиционные одиночные серверы должны работать в течение длительного времени без перебоев. Доступность должна быть очень высокой, что делает надежность и долговечность оборудования чрезвычайно важными. Критически важные корпоративные серверы будут очень отказоустойчивыми и будут использовать специализированное оборудование с низкой частотой отказов , чтобы максимально увеличить время безотказной работы . Могут быть включены источники бесперебойного питания для защиты от сбоев питания. Серверы обычно включают в себя аппаратное резервирование , такие как двойное источники питания , RAID - дисковых систем, и память ECC , [10] вместе с обширной предварительной загрузки тестирования памяти и проверки. Критически важные компоненты могут быть заменены в горячем режиме , что позволяет техническим специалистам заменять их на работающем сервере, не выключая его, а для защиты от перегрева серверы могут иметь более мощные вентиляторы или использовать водяное охлаждение . Их часто можно будет настроить, включить и выключить или перезагрузить удаленно, используя внеполосное управление , обычно на основе IPMI . Корпуса серверов обычно бывают плоскими и широкими и предназначены для установки в 19-дюймовые стойки или в открытые стойки .
Эти типы серверов часто размещаются в выделенных центрах обработки данных . Обычно они имеют очень стабильное питание и Интернет, а также повышенную безопасность. Шум также не вызывает беспокойства, но потребление энергии и тепловыделение могут стать серьезной проблемой. Серверные комнаты оборудованы устройствами для кондиционирования воздуха.
Стоечный сервер виден из задних
Вид на серверы Фонда Викимедиа спереди
Серверы Фонда Викимедиа, вид сзади
Серверы Фонда Викимедиа, вид сзади
Кластеры
Фермы серверов или серверов кластера представляет собой набор компьютерных серверов , поддерживаемых организацией функциональности сервера поставок далеко за пределы возможностей одного устройства. Современные центры обработки данных теперь часто строятся из очень больших кластеров гораздо более простых серверов [11], и вокруг этой концепции предпринимаются совместные усилия Open Compute Project .
бытовая техника
Класс небольших специализированных серверов, называемых сетевыми устройствами , обычно находится на нижнем уровне шкалы и часто меньше обычных настольных компьютеров.
Мобильный
Мобильный сервер имеет портативный форм-фактор, например портативный компьютер . [12] В отличие от крупных центров обработки данных или стоечных серверов, мобильный сервер предназначен для развертывания в дороге или специального назначения в аварийных, аварийных или временных средах, где традиционные серверы невозможны из-за их требований к электропитанию, размера и время развертывания. [13] Основными бенефициарами так называемой технологии «сервер на ходу» являются сетевые менеджеры, разработчики программного обеспечения или баз данных, учебные центры, военнослужащие, правоохранительные органы, судебно-медицинская экспертиза, группы по оказанию чрезвычайной помощи и обслуживающие организации. [14] Чтобы облегчить переносимость, в корпус интегрированы такие функции, как клавиатура , дисплей , аккумулятор ( источник бесперебойного питания для обеспечения резервирования питания в случае сбоя) и мышь.
Операционные системы
В Интернете доминирующие операционные системы среди серверов UNIX-подобных с открытым исходным кодом распределения , такие как те , которые основаны на Linux и FreeBSD , [15] с Windows Server также имеющий значительную долю. Также развернуты проприетарные операционные системы, такие как z / OS и macOS Server , но в гораздо меньшем количестве.
Специализированные серверно-ориентированные операционные системы традиционно обладали такими функциями, как:
- Графический интерфейс недоступен или необязателен
- Возможность перенастроить и обновить аппаратное и программное обеспечение до некоторой степени без перезапуска
- Расширенные средства резервного копирования для регулярного и частого резервного копирования критически важных данных в режиме онлайн ,
- Прозрачная передача данных между разными томами или устройствами
- Гибкие и расширенные сетевые возможности
- Возможности автоматизации, такие как демоны в UNIX и службы в Windows
- Надежная система безопасности с расширенной защитой пользователей, ресурсов, данных и памяти.
- Расширенное обнаружение и предупреждение о таких условиях, как перегрев, сбой процессора и диска. [16]
На практике сегодня многие настольные и серверные операционные системы имеют схожие кодовые базы , различающиеся в основном конфигурацией.
Потребление энергии
В 2010 году на центры обработки данных (серверы, системы охлаждения и другую электрическую инфраструктуру) приходилось 1,1–1,5% потребления электроэнергии во всем мире и 1,7–2,2% в США. [17] По одной из оценок, общее потребление энергии для информационных и коммуникационных технологий более чем в 5 раз сокращает углеродный след [18] в остальной части экономики за счет повышения эффективности.
Глобальное потребление энергии увеличивается из-за растущего спроса на данные и пропускную способность. Совет по защите природных ресурсов (NRDC) заявляет, что в 2013 году центры обработки данных использовали 91 миллиард киловатт-часов (кВтч) электроэнергии, что составляет 3% от мирового потребления электроэнергии.
Экологические группы сосредоточили внимание на выбросах углерода центрами обработки данных, поскольку на них приходится 200 миллионов метрических тонн углекислого газа в год.
Различные хостинг-провайдеры представили экологически чистые серверы, которые снизили выбросы углерода на 80% за счет стандартного оборудования и управления энергопотреблением.
Смотрите также
- Пиринговый
Заметки
- ^ Слуга CORBA является серверным объектом , к которому вызовы методов из удаленного вызова метода будут направлены , но это редкое использование.
Рекомендации
- ^ Основы администрирования Windows Server . Официальный академический курс Microsoft. 111 River Street, Hoboken, NJ 07030: John Wiley & Sons . 2011. стр. 2 -3. ISBN 978-0-470-90182-3.CS1 maint: location ( ссылка )
- ^ Комер, Дуглас Э .; Стивенс, Дэвид L (1993). Том III: Программирование клиент-сервер и приложения . Межсетевое взаимодействие с TCP / IP. Департамент компьютерных наук, Университет Пердью, Западный Лафайет, IN 479: Prentice Hall . стр. 11d. ISBN 978-0-13-474222-9.CS1 maint: location ( ссылка )
- ^ Ричард А. Хенле, Борис В. Кувшинов, С. М. Кувшинов (1992). Настольные компьютеры: в перспективе . Издательство Оксфордского университета. п. 417. ISBN 9780195070316.
Сервер - это довольно недавний термин компьютерных сетей, полученный из теории очередей.
CS1 maint: использует параметр авторов ( ссылка ) - ^ Рулифсон, Джефф (июнь 1969 г.). DEL . IETF . DOI : 10,17487 / RFC0005 . RFC 5 . Проверено 30 ноября 2013 года .
- ^ Шапиро, Элмер Б. (март 1969 г.). Сетевое расписание . IETF . DOI : 10,17487 / RFC0004 . RFC 4 . Проверено 30 ноября 2013 года .
- ^ Использование сервера публикации-подписки HTTP , Oracle
- ^ IT объяснил. «Сервер - определение и детали» . www.paessler.com .
- ^ IT объяснил. «DNS-сервер не отвечает» . www.dnsservernotresponding.org .
- ^ «Веб-серверы» . ИТ-бизнес Edge . Проверено 31 июля 2013 года .
- ^ Ли, Хуанг, Шен, Чу (2010). « » Реалистичная оценка аппаратных ошибок памяти и программное обеспечение система Восприимчивость». Usenix Ежегодной техническая конференция 2010" (PDF) . Проверено 30 января 2017 .CS1 maint: несколько имен: список авторов ( ссылка )
- ^ «Google раскрывает некогда секретный сервер» . CNET . CBS Interactive . Проверено 30 января 2017 .
- ^ «Мобильный сервер Power to go, EUROCOM Panther 5SE» . Архивировано из оригинала на 2013-03-17.
- ^ «Мобильный серверный ноутбук» .
- ^ «Компьютер серверного уровня становится мобильной рабочей станцией» .
- ^ «Статистика использования и рыночная доля Linux для веб-сайтов» . Дата обращения 18 января 2013 .
- ^ «Серверно-ориентированная операционная система» . Проверено 25 мая 2010 .
- ^ Марков, Джон (31 июля 2011 г.). «Центры обработки данных, использующие меньше энергии, чем прогнозируется, говорится в отчете» . NY Times . Дата обращения 18 января 2013 .
- ^ «SMART 2020: Обеспечение низкоуглеродной экономики в век информации» (PDF) . Климатическая группа . 6 октября 2008. Архивировано из оригинального (PDF) 22 ноября 2010 года . Дата обращения 18 января 2013 .
дальнейшее чтение
- Эрланг, Агнер Краруп (1909). «Теория вероятностей и телефонных разговоров» (PDF) . Nyt Tidsskrift для Matematik B . 20 : 33–39. Архивировано из оригинального (PDF) 01.10.2011.
- Кендалл, Д.Г. (1953). «Случайные процессы, происходящие в теории массового обслуживания и их анализ методом вложенной цепи Маркова» . Летопись математической статистики . 24 (3): 338–354. DOI : 10.1214 / АОМ / 1177728975 . JSTOR 2236285 .