Сервер это что такое: Что такое сервер и для чего он нужен – Глоссарий SkillFactory

Содержание

Сервер (аппаратное обеспечение) | это… Что такое Сервер (аппаратное обеспечение)?

У этого термина существуют и другие значения, см. Сервер.

Се́рвер (англ. server от to serve — служить) — аппаратное обеспечение, выделенное и/или специализированное для выполнения на нём сервисного программного обеспечения (в том числе серверов тех или иных задач).

Содержание

  • 1 Сервер — выделенный компьютер
  • 2 Специализация
    • 2.1 Надёжность
    • 2.2 Размеры и другие детали внешнего исполнения
    • 2.3 Ресурсы
      • 2.3.1 Аппаратные решения
        • 2.3.1.1 Псевдоаппаратные решения
      • 2.3.2 Производительность 
      • 2.3.3 Масштабируемость
  • 3 Размещение и обслуживание
  • 4 Литература

Сервер — выделенный компьютер

Серверы Википедии в Тампа, Флорида

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

Сервер и рабочая станция могут иметь одинаковую аппаратную конфигурацию, так как различаются лишь по участию в своей работе человека за консолью.

Некоторые сервисные задачи могут выполняться на рабочей станции параллельно с работой пользователя. Такую рабочую станцию условно называют невыделенным сервером.

Консоль (обычно — монитор/клавиатура/мышь) и участие человека необходимы серверам только на стадии первичной настройки, при аппаратно-техническом обслуживании и управлении в нештатных ситуациях (штатно, большинство серверов управляются удаленно). Для нештатных ситуаций серверы обычно обеспечиваются одним консольным комплектом на группу серверов (с коммутатором, например KVM-переключателем, или без такового).

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

Специализация

Сервер высотой 1U

Специализация серверного оборудования идет несколькими путями, выбор того, в каком направлении идти, каждый производитель определяет для себя сам. Большинство специализаций удорожают оборудование.

Надёжность

Серверное оборудование зачастую предназначено для обеспечения работы сервисов в режиме 24/7, поэтому часто комплектуется дублирующими элементами, позволяющими обеспечить «пять девяток» (99,999 %; время недоступности сервера или простой системы составляет менее 6 минут в год). Для этого конструкторами при создании серверов создаются специальные решения, отличные от создания обычных компьютеров:

  • память обеспечивает повышенную устойчивость к сбоям. Например для i386-совместимых серверов, модули оперативной памяти и кэша имеет усиленную технологию коррекции ошибок (англ. 
    Error Checking and Correction
    , ECC). На некоторых других платформах, например SPARC (Sun Microsystems), коррекцию ошибок имеет вся память. Для собственных мэйнфреймов IBM разработала специальную технологию Chipkill™.
  • Повышение надёжности сервера достигается резервированием, в том числе с горячими подключением и заменой (англ. Hot-swap) критически важных компонентов:
    • при необходимости вводится дублирование процессоров (например, это важно для непрерывности выполнения сервером задачи долговременного расчёта — в случае отказа одного процессора вычисления не обрываются, а продолжаются, пусть и на меньшей скорости)
    • блоков питания,
    • жёстких дисков в составе массива RAID и самих контроллеров дисков,
    • групп вентиляторов, обеспечивающих охлаждение компонентов сервера.
  • В функции аппаратного мониторинга вводят дополнительные каналы для контроля большего количества параметров сервера: датчики температуры контролируют температурные режимы всех процессоров, модулей памяти, температуру в отсеках с установленными жёсткими дисками; электронные счётчики импульсов встроенные в вентиляторы выполняют функции тахометров и позволяют, в зависимости от температуры, регулировать скорость их вращения; постоянный контроль напряжения питания компонентов сервера позволяет сигнализировать об эффективности работы блоков питания; сторожевой таймер не позволяет остаться незамеченным зависанию системы, автоматически производя принудительную перезагрузку сервера.

Размеры и другие детали внешнего исполнения

Серверы (и другое оборудование), которые требуется устанавливать на некоторое стандартное шасси (например, в 19-дюймовые стойки и шкафы) приводятся к стандартным размерам и снабжаются необходимыми крепежными элементами.

Серверы, не требующие высокой производительности и большого количества внешних устройств зачастую уменьшают в размерах. Часто это уменьшение сопровождается уменьшением ресурсов.

В так называемом «промышленном исполнении», кроме уменьшенных размеров, корпус имеет бо́льшую прочность, защищенность от пыли (снабжен сменными фильтрами), влажности и вибрации, а также имеет дизайн кнопок, предотвращающий случайные нажатия.

Конструктивно аппаратные серверы могут исполняться в настольном, напольном, стоечном и потолочном вариантах. Последний вариант обеспечивает наибольшую плотность размещения вычислительных мощностей на единицу площади, а также максимальную масштабируемость. С конца 1990-х всё большую популярность в системах высокой надёжности и масштабируемости получили так называемые блэйд-серверы (от англ.  blade — лезвие) — компактные модульные устройства, позволяющие сократить расходы на электропитание, охлаждение, обслуживание и т. п…

Ресурсы

По ресурсам (частота и количество процессоров, количество памяти, количество и производительность жестких дисков, производительность сетевых адаптеров) серверы специализируются в двух противоположных направлениях — наращивании ресурсов и их уменьшении.

Наращивание ресурсов преследует целью увеличение емкости (например, специализация для файл-сервера) и производительности сервера. Когда производительность достигает некоторого предела, дальнейшее наращивание продолжают другими методами, например, распараллеливанием задачи между несколькими серверами.

Уменьшение ресурсов преследует цели уменьшения размеров и энергопотребления серверов.

Аппаратные решения

Крайней степенью специализации серверов являются, так называемые аппаратные решения (аппаратные роутеры, сетевые дисковые массивы, аппаратные терминалы и т.  п.). Аппаратное обеспечение таких решений строится «с нуля» или перерабатывается из существующей компьютерной платформы без учета совместимости, что делает невозможным использование устройства со стандартным программным обеспечением.

Программное обеспечение в аппаратных решениях загружается в постоянную и/или энергонезависимую память производителем.

Аппаратные решения, как правило, более надежны в работе, чем обычные серверы, но менее гибки и универсальны. По цене, аппаратные решения могут быть как дешевле, так и дороже серверов, в зависимости от класса оборудования.

Псевдоаппаратные решения

В последнее время появилось большое количество бездисковых серверных решений на базе компьютеров (как правило x86) формфактора Mini-ITX и меньше cо специализированной переработкой GNU/Linux на SSD-диске (ATA-флэш или флеш-карте), позиционируемых как «аппаратные решения». Данные решения не принадлежат к классу аппаратных, а являются обычными специализированными серверами. В отличие от (более дорогих) аппаратных решений они наследуют проблемы платформы и программных решений, на которых основаны.

Производительность 

Производительность является основной характеристикой сервера, которая зависит от его аппаратной конфигурации.

Для повышения производительности серверов применяются технологии, основанные на последних достижениях в области компьютерной техники. Например:

  • Четыре процессорных разъема на одной материнской плате
  • Многоканальный режим работы оперативной памяти
  • Независимые шины PCI-Express x16
  • Жесткие диски с интерфейсом SAS и высокой скоростью вращения шпинделя (10000-15000 об/мин)
  • Объединение жестких дисков в RAID-массивы

Производительность сервера также можно увеличить при помощи построения подсистем памяти и ввода-вывода, максимально эффективно использующих возможности архитектуры процессоров. А также все может зависеть от материнской платы

Масштабируемость

Масштабируемость — это возможность увеличить вычислительную мощность сервера или операционной системы (в частности, их способности выполнять больше операций или транзакций за определенный период времени, либо запускать больше различных служб) за счет установки большего числа процессоров, оперативной памяти и т.  д. или их замены на более производительные. Это масштабируемость аппаратная. Изначально серверы в продаже идут в базовой комплектации, но с заложенным потенциалом к «апгрейду» — аппаратная масштабируемость. К примеру базовый набор сервера имеет один процессор, два модуля памяти (в серверах всегда используются только парные модули памяти) например 2х2 гб и дисковый массив из двух жестких дисков допустим 146 гб. Далее (или сразу) по мере потребности можно доустановить ещё один процессор, память или добавить диски в массив. Масштабируемость бывает вертикальная и горизонтальная. Под вертикальной масштабируемостью подразумевается создание одной системы с множеством процессоров, а под горизонтальной — объединение компьютерных систем в единый виртуальный вычислительный ресурс. Каждый из этих подходов рассчитан на использование в различных областях. Так, горизонтальное масштабирование лучше всего подходит для балансировки нагрузки Web-приложений, а вертикальное масштабирование лучше всего подходит для больших баз данных, управлять которыми на одной системе проще и эффективнее. Вертикальная масштабируемость — это всегда улучшение характеристик используемых серверов за счет замены процессоров на более быстрые или увеличения количества процессоров для повышения общей производительности сервера, а горизонтальная масштабируемость — увеличение количества серверов для распределения нагрузки между ними. Так же бывает программная масштабируемость.

Размещение и обслуживание

Серверы размещаются в специально оборудованных помещениях, называемых серверными комнатами. Управление серверами осуществляют квалифицированные специалисты — системные администраторы.

Литература

  • Vol III: Client-Server Programming and Applications. — Department of Computer Sciences, Purdue University, West Lafayette, IN 47907: Prentice Hall, 1993. — P. 11d. — ISBN 0-13-474222-2

Локальный сервер — что это?

При разработке веб-сайтов часто удобнее работать не с «настоящим» веб-сервером Интернет-провайдера, а сделать его программную копию, эмулировать этот веб-сервер на компьютере разработчика. Такую эмуляцию и называют локальным сервером.

Локальный сервер — что это?

Локальный сервер – это набор программного обеспечения, который выполняет функции сервера, работающий на локальном компьютере или в локальной сети предприятия.

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

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

Local server и localhost

Иногда локальный сервер (local server) могут называть localhost, хотя это не совсем верно. Localhost – это компьютер пользователя в сети, на котором осуществляется доступ к удалённому веб-сайту или приложению. Однако, этот веб-сайт или приложение могут физически располагаться на компьютере пользователя и работать по тем же протоколам, как и при удалённом доступе.

Для этих целей используется т.н. «обратный IP-адрес» (loopback address) 127.0.0.1, который используется для тестирования программ на компьютере разработчика, так как будто с ними работает конечный пользователь, без пересылки информации через сеть Интернет.

При вызове какого-либо IP-адреса, вызов с компьютера уходит в Интернет. Однако, вызов адреса 127.0.0.1 не вызывает никакого взаимодействия с внешней сетью, но заставляет компьютер пользователя вести себя как внешний сервер. В этом случае компьютер и называется «localhost». Адресное пространство для localhost составляет от 127.0.0.0 до 127.255.255.255, но обычно используется адрес 127.0.0.1. Однако для того, чтобы компьютер работал как локальный сервер, на нем должно быть установлено соответствующее программное обеспечение.

ПО для локального сервера

ПО локального сервера обозначается аббревиатурой xAMP, от его самых необходимых компонентов: Apache, MySQL, PHP. Данным сокращением описывается комплектация пакетов программ под соответствующую операционную систему, обозначаемую буквой «х». Например, для Windows это будет WAMP, для Linux – LAMP, для Mac OS – MAMP.

Системы xAMP представляют собой пакеты программ (сборки), которые не нужно устанавливать и настраивать по отдельности.

Для WAMP наиболее популярны локальные серверы: OpenServer, Денвер, XAMPP. В платформу WAMP также входят открытое ПО Apache, СУБД MySQL, интерпретатор PHP для работы с языками программирования, автоматический установщик расширений.

Open Server

Open Server — многофункциональный инструмент, очень популярный среди разработчиков. Имеет простой и понятный интерфейс и навигацию, удобную управляющую программу, а также большой выбор подключаемых компонентов. В полную версию включён необходимый набор программ для быстрого начала работы с ним (Opera, Sublime, WinSCP, Simplewall, Jcpicker, Bright Master). В состав входит несколько HTTP-серверов (Apache или Nginx), различные версии модулей PHP и СУБД.

Преимущества Open Server: многофункциональность, поддержка многих языков интерфейса, подробная инструкция пользователя, возможность работы через командную строку, быстрота запуска, просмотр логов в реальном времени.

К недостаткам следует отнести невозможность автоматического обновления пакета программ (только вручную).

Денвер

Название «Денвер», как ни странно, имеет российское происхождение. Это сокращение фарзы «джентльменский набор Web-разработчика», ДНВР). В английском варианте используется название Denwer. Денвер представляет собой набор дистрибутивов и программную оболочку, предназначенные для создания и отладки сайтов, веб-приложений и прочего динамического содержимого интернет-страниц на локальном ПК без необходимости подключения к сети Интернет под управлением ОС Windows.

К достоинствам Денвера можно отнести простоту и небольшой объём, к недостаткам – в целом не очень широкий функционал, который, однако, каждый разработчик может «добирать» для себя самостоятельно.

XAMPP

XAMPP (читается как «Зэмп») — кроссплатформенная сборка локального веб-сервера, которая состоит содержащая сервер Apache, систему управления баз данных Maria SQL (либо MySQL), интерпретатор скриптов PHP, язык программирования Perl и большое количество дополнительных библиотек, позволяющих запустить полноценный веб-сервер.

Кроме этого, пакет XAMPP содержит также FTP-сервер FileZilla, сервер POP3/SMTP, а также утилиту phpMyAdmin. XAMPP работает со всеми 32-х разрядными ОС Microsoft (98[2]/2000/XP/2003/Vista/7), а также с Linux, Mac OS X и Solaris. Программа свободно распространяется согласно лицензии GNU General Public License.

Достоинства XAMPP – широкой функционал. К недостаткам можно отнести требовательность к квалификации разработчика, который должен хорошо ориентироваться, как правильно работать со всеми его компонентами.

Другие варианты сборок локальных серверов

Есть также много других вариантов наборов программ локального сервера: EasyPHP, VertrigoServ, WampServer, MoWeS Portable, AppServ, Bitnami, Endels, Uniform Server, Usbwebserver, EleanorServer, VVV.

Для чего может понадобиться локальный сервер

Локальный сервер может быть полезен, например для следующих случаев:

  • Установка различных систем управления контентом (CMS) для знакомства с их интерфейсом и административной панелью.

Сейчас уже практически никто не создаёт веб-сайты с нуля, как никто, например, не шьёт костюм, начиная с изготовления ткани на ткацком станке. Для этого, в основном, используются различные т.н. «системы управления контентом» CMS (Content Management System), как WordPress, или многие другие.

Однако, чтобы убыстрить знакомство с ними, понять различные аспекты взаимодействия и сэкономить время, усилия и стоимость удалённого доступа, можно установить CMS как локальный сервер, и отработать в такой лаборатории все требуемые детали.

  • Для обучения программированию, работе в различных программах вёрстки, обработки изображений и пр.

Разработки программ часто ведётся удалённо на облачных платформах PaaS (Platform as a Service). Это даёт возможность коллективу разработчиков ПО значительно сэкономить на начальных инвестициях, поскольку в этом случае не нужно закупать дорогостоящее серверное оборудование, чтобы развернуть аппаратную среду разработки у себя в офисе или дома.

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

Однако, эту среду разработки нужно вначале изучить, и понять все её особенности. Если сразу начать работать с облачным провайдером PaaS, это может быть чревато нерациональными затратами на удалённый доступ, возможностью приобретения функционала, который в дальнейшем не потребуется, да и время будет тратиться больше.

Поэтому, рациональным решением будет развёртывание среды PaaS в минимальной конфигурации в виде локального сервера, а затем, после получения необходимого опыта можно будет переходить на взаимодействие с полнофункциональной платформой в удалённом режиме.

  • Для тестирования корректности работы систем резервирования и катастрофоустойчивости

При использовании систем резервного копирования необходимо проверять их работоспособность. Если этого не делать, то возможны ошибки, например при кодировке или форматировании данных. Поэтому, корректность работы системы резервного копирования лучше вначале проверять на локальном сервере.

  • Для корректировки структуры веб-сайта

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

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

Однако, более глубокие изменения структуры сайта лучше в начала тестировать на локальной копии веб-сайта, а потом уже запускать её «в производство».

Заключение

Итак, локальный сервер – один из самый востребованных инструментов веб-разработчика. Локальный сервер для него – это и «производственный станок», и «нагрузочный стенд» (подобный стенду для настройки режимов двигателя в гараже) и «мольберт» дизайнера.

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

Например, для создания лендинг-страниц применим и Денвер, и OpenServer и другие платформы. При изменении круга задач, разработчик часто не меняет всю платформу, а изменяет уже используемые инструменты. Для новичка в разработке, в плане иллюстрации работы настоящего веб-сервера, ни одна программа не будет иметь преимуществ.

В целом, можно сказать, что все платформы хороши для того или иного применения. Большую роль играет задача, для которой используется локальный сервер. Рекомендовать какую-то платформу, как наилучшую для локального сервера – некорректно, как нельзя рекомендовать универсальный двигатель автомобиля, который подойдёт и для гонок, и для поездок в супермаркет.

Некоторые разработчики используют довольно редкие виды локальных серверов: WampServer, EasyPHP, AppServ и др. Однако, повторим, что идеального и универсального решения для выбора локального сервера не существует. Всё зависит от круга задач, который необходимо решать в той или иной ситуации.

СЕРВЕР | английское значение — Cambridge Dictionary

Теперь мы рассмотрим предыдущее исследование систем очередей с гибкими, подверженными сбоям серверами и сравним эту работу с нашими результатами.

Из Кембриджского корпуса английского языка