Посещая сайты в сети, покупая товары в онлайн-магазине и общаясь с друзьями в соцсетях, пользователь взаимодействует с сервером. Информация в интернете хранится на специальных устройствах, которые нужны для хранения и передачи данных. Общий объём мирового рынка серверов уже в 2020-м достиг $83,66 млрд.
Только в 2023 году в Россию поставили более 412,7 тысячи единиц оборудования. Поэтому не только разработчикам, но и предпринимателям и клиентам полезно знать, как эти устройства работают.
Что такое сервер
Когда компьютеры только появились, сервером называли процессы, запущенные на ПК. Термин впервые появился в 1969 году в документе к ARPANET — сети, созданной до интернета. Он образован от английского слова serving — «служить», которое хорошо описывает задачу современного серверного компьютера в общих чертах.
Позже термин расширили. Теперь сервер — это выделенное устройство, специально настроенное для обслуживания и хранения данных. Также под этим словом понимают сетевой компьютер, отвечающий на запросы других ПК в локальной сети или глобальном интернете. Обычно устройство работает автономно и без постоянного контроля со стороны человека.
Если рассматривать сервер с аппаратной точки зрения, он слабо отличается от обычного компьютера. Он состоит из процессора, ОЗУ, жёсткого диска и других похожих компонентов. Разница лишь в том, что серверная архитектура способна справиться с большим потоком данных и работать в круглосуточном режиме. Также серверы обычно имеют повышенную надёжность, расширяемость и возможность горячей замены составных частей.
Как работает сервер
Объяснение, что такое сервер, простыми словами может оказаться сложным для людей, далёких от IT. Чтобы стало понятнее, разберём принцип его работы на примере хостинга сайта:
-
Пользователь заходит на сайт Exolve
-
Браузер, то есть клиентское приложение (или просто клиент), отправляет запрос на DNS-сервер и получает IP веб-сервера, на котором хранятся данные сайта
-
Браузер отправляет запрос. В нём указано, что клиент должен получить
-
Сервер обращается к базе данных, создаёт HTML-код и передаёт его на пользовательский компьютер
-
Клиент автоматически преобразует код в страницу и выводит на экран
Типы серверов
С точки зрения аппаратной реализации выделяют четыре вида серверов:
Выделенный, или dedicated server
Специальная машина для узкоспециализированных задач. Такие серверы используют в ЦОД (центрах обработки данных), серверных комнатах корпораций и научных организациях. Они выглядят как системники без экрана и клавиатуры. Их особенность — стандартизированный размер, позволяющий разместить оборудование в шкафах.
Выделенный в сети сервер функционирует под управлением определённых ОС и другого ПО автономно. Участие пользователя требуется на этапах настройки, запуска и обслуживания.
Производители оборудования создают машины с повышенной мощностью, которая требуется для нормальной работы всех функций сервера. Компьютеры поставляют со специализированными процессорами, обладающими до 64 ядер, значительными объёмами оперативной памяти и жёсткого диска.
Невыделенный, или nondedicated server
Некоторые задачи (например, хранение данных) можно выполнять на обычном ПК параллельно с работой пользователя. Такой вариант называют невыделенным сервером. Его создают на базе стандартного компьютера путём расширения ОЗУ и подключения дополнительных HDD и SSD, оформления постоянного IP у интернет-провайдера и настройки специализированного ПО.
Пользователь может продолжить работу с сервером, как и со стандартным ПК. На невыделенных машинах запускают офисный софт, смотрят видео и т. п. Из-за специфики nondedicated server не применяют для обработки больших объёмов информации. Такое решение больше подходит для организации обмена данных в локальных сетях малого бизнеса.
Одноплатный
Микросервер, созданный на одной плате с интегрированным или подключаемым модулем ОЗУ и жёстким диском, ЦП и сетевым портом. Типичный представитель одноплатных серверов — Raspberry Pi.
Плюсы таких машин:
-
Низкое энергопотребление
-
Простое обслуживание. Их обычно поставляют уже в собранном виде
-
Минимальный шум
Из-за низкой вычислительной мощности микросерверы применяют только для взаимодействия с системами умного дома и датчиками систем безопасности. Для более объёмных потоков данных Raspberry Pi и аналоги не подходят.
Виртуальный
Его также называют VPS (англ. virtual private server) или VDS (англ. virtual dedicated server).
Эмуляция реального сервера. На базе одного компьютера можно создать две и более виртуальных машины. VPS или VDS позволяет рационально распределить имеющиеся ресурсы машины компании.
Провайдеры часто предлагают аренду VPS или VDS. Услуга подойдёт компаниям, которые работают с большими объёмами данных без возможности создать собственный сервер или арендовать выделенный. Клиент может выбрать столько ОЗУ, места на диске, сколько требуется, и не переплачивать за лишние мощности.
Виртуальный сервер по функциональности практически не отличается от физического. Пользователь может работать с памятью и данными на диске, управлять правами доступа, устанавливать ПО и работать с ними.
Для чего используется сервер
Сервер — универсальное решение для выполнения любых задач, связанных с данными. Примеры применения:
-
Хостинг сайтов
-
Разработка и тестирование ПО
-
Удалённое взаимодействие с принтерами
-
Хранение данных
-
Создание общего пространства для работы в компании
-
Совместная игра в интернете
-
Создание шлюзов (прокси или VPN) для перенаправления трафика
-
Обучение искусственного интеллекта
Для выполнения этих задач важна скорость и мощность компьютера, стабильность и отказоустойчивость. Сервер должен постоянно отвечать на запросы. В противном случае сайт, веб-приложение или онлайн-игра отключатся.
Сбои приведут к потере репутации и покупателей. Из-за этого компании редко создают собственные серверы и обращаются к провайдерам. МТС и другие предлагают клиентам готовую инфраструктуру и постоянную поддержку.
Обмен данными между серверами и клиентами
Все задачи, которые выполняет сервер, представляют собой обмен информацией со сторонними компьютерами. Передача данных происходит на двух уровнях:
Физический уровень
Чтобы сервер и клиент могли работать вместе, между ними нужно создать надёжный канал. По нему передают запросы и ответы. Для этого используют различные интерфейсы:
-
Ethernet-кабель
-
Беспроводную связь (Wi-Fi, Bluetooth, WiBro)
По этому каналу серверная и клиентская части обмениваются электро- или радиосигналами. В зависимости от количества звеньев в цепи доставки пакетов соединение может быть:
-
Непосредственным. Клиент напрямую взаимодействует с сервером. Такое возможно только в локальных сетях
-
Опосредованным. Пользовательский компьютер взаимодействует с серверной машиной через другие ПК
Логический уровень
На этом уровне происходит передача информации, то есть потока закодированных данных. Для обмена разработчики создали сетевые протоколы — специальные комплексы правил, регламентирующие все нюансы пакетов. Это направление стремительно развивается с 1960-х. Часть протоколов ушла в прошлое, а какие-то используют до сих пор, например:
-
HTTP FTP
-
POP3
-
SMTP
-
TELNET
-
TCP
Протоколы передачи имеют подвиды с дополнительной функциональностью, которой нет у базовых версий. Сейчас бизнес активно применяет HTTPS — новую версию HTTP. Она имеет механизм шифрования соединения для безопасной передачи данных через интернет.
Кроме распространённых протоколов, которые доступны всем коммерческим организациям, есть узкоспециализированные. Их разрабатывают крупные корпорации, военные и научные учреждения для удовлетворения нестандартных потребностей.
К примеру, американские военные ведомства и NASA внедряют DTN (Delay-tolerant networking). Он обеспечивает стабильное взаимодействие в экстремальных условиях. Как правило, у клиентских устройств нет постоянного и надёжного подключения к интернету. Из-за этого DTN отлично подходит для применения в космосе.
Кейс Exolve
К нашей платформе подключилась онлайн-школа иностранных языков, которая общается со студентами преимущественно в мессенджерах: отправляет уведомления об оплате, мероприятиях, акциях и так далее. Когда компания только появилась, основную работу можно было выполнять вручную и с помощью встроенных в CRM средств.
Вместе с ростом бизнеса и появлением клиентов из других регионов появилась потребность в автоматизации коммуникаций. Для этого компания подключила Messaging API. Этот сервис беспрерывно работает на нашем сервере и отправляет сообщения в выбранное пользователем время без участия человека.
Интеграция позволяет отправлять шаблонные сообщения по расписанию, персонализировать их благодаря интеграции с CRM. Кроме того, интерфейс собирает данные о доставке, прочтении и ошибках, что пригодится при анализе маркетинговых кампаний.
Результаты интеграции:
-
Увеличение количества прочтений на 20%. Автоматическая персонализация позволила сделать сообщения более релевантными для клиента.
-
Сокращение объёма работы для запуска рекламы в мессенджерах благодаря автоматизации рутинных процессов.
Заключение
Серверы необходимы для обеспечения стабильной работы локальных и глобальных сетей. Без них современный бизнес в принципе не может существовать. Поэтому к серверам предъявляют высокие требования. Они должны работать круглосуточно и безотказно. Любое отключение может привести к нарушениям, сбоям или потере данных, что в результате станет ударом по репутации бизнеса.