Термин · Глоссарий B2B-ПО

Клиент/сервер (Client/server)

Клиент/сервер – базовая архитектурная модель распределённых вычислений, в которой клиент (запрашивающая сторона) и сервер (обрабатывающая и хранящая данные сторона) взаимодействуют через сеть. Лежит в основе большинства корпоративных приложений, веб-сервисов и интернета.

Буква «К» В категориях: 5 Платформ: 6+

Введение

Архитектура клиент/сервер (Client/Server) – это модель взаимодействия компонентов распределённой системы, при которой одна сторона (клиент) инициирует запросы на получение данных или выполнение операций, а другая сторона (сервер) обрабатывает эти запросы и возвращает результаты. Клиент и сервер работают на отдельных узлах сети и общаются по стандартным протоколам (TCP/IP, HTTP, SQL-протоколы баз данных).

Эта архитектурная парадигма пришла на смену мейнфрейм-вычислениям с «немыми терминалами» в 1980–90-х годах и по сей день остаётся базовой моделью для корпоративных приложений, веб-сервисов и мобильных приложений.

История и контекст

До клиент-серверной архитектуры господствовала централизованная модель: мощный мейнфрейм выполнял все вычисления, а пользователи работали с «тупыми терминалами» (dumb terminal), лишёнными вычислительной мощности. С удешевлением персональных компьютеров в 1980-х годах появилась возможность распределить вычисления между клиентом и сервером.

Термин «клиент/сервер» был популяризован Gartner Group в конце 1980-х годов. Первая волна корпоративных ERP-систем (SAP R/2→R/3, Oracle Applications) перешла на двух- и трёхуровневую клиент-серверную архитектуру в 1990-х. С появлением веба в качестве клиента стал браузер, что породило современную веб-архитектуру.

Как это работает

Различают несколько вариантов клиент-серверной архитектуры:

  • Двухзвенная (2-tier): клиент напрямую взаимодействует с сервером баз данных. Вся бизнес-логика в клиенте (fat client) или в хранимых процедурах БД. Характерна для классических ERP 1990-х.
  • Трёхзвенная (3-tier): клиент ↔ сервер приложений ↔ сервер БД. Бизнес-логика вынесена на средний уровень. Доминирующая модель корпоративных приложений с 2000-х.
  • N-звенная / микросервисная: логика разбита на множество независимых сервисов, взаимодействующих через API. Современный стандарт облачных приложений.

Взаимодействие строится по паттерну «запрос–ответ» (Request-Response): клиент отправляет запрос, сервер обрабатывает и возвращает результат. Протоколы: HTTP/HTTPS, REST, gRPC, SOAP, WebSocket (для стриминга).

Где применяется

  • Корпоративные ERP/CRM: SAP, 1С, Oracle – классические клиент-серверные системы.
  • Веб-приложения: браузер (клиент) взаимодействует с веб-сервером и сервером БД.
  • Мобильные приложения: смартфон (клиент) обращается к backend API.
  • СУБД: приложения-клиенты подключаются к серверу PostgreSQL, MySQL, Oracle.
  • Почтовые клиенты: Outlook (клиент) – Exchange (сервер).

Преимущества и ограничения

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

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

Связь с другими понятиями

Клиент-серверная модель является предшественницей современной микросервисной архитектуры и SOA (Service-Oriented Architecture). В облачном контексте сервер размещается как IaaS или PaaS. API (REST, gRPC) – современный интерфейс взаимодействия клиента и сервера. Для управления корпоративным парком клиентских устройств используются Client Management Tools.

Понятия из глоссария Цифрового маркетплейса, которые часто встречаются вместе с термином «Клиент/сервер».

Платформы класса «Клиент/сервер»

Решения из каталога Цифрового маркетплейса, относящиеся к этому классу ПО. Карточки ведут на полные карточки платформ с тарифами, обзорами и кейсами внедрения.

Field Connect

Field Connect

ИТ-инфраструктура
Программное обеспечение для удалённого управления и мониторинга сельскохозяйственного оборудования: дождевальн...
Цена по запросу
★ 4.7
Подробнее →
Гослинукс

Гослинукс

Серверные ОС
Гослинукс (GosLinux) - операционная система на базе GNU/Linux-дистрибутива CentOS 6.4 для 32-битных и 64-битны...
Цена по запросу
Подробнее →
ClickHouse

ClickHouse

ИТ-инфраструктура
ClickHouse — колоночная аналитическая СУБД (OLAP), созданная Яндексом и открытая в 2016 году. Обеспечивает обр...
Цена по запросу
★ 4.8
Подробнее →

Категории каталога

Разделы каталога Цифрового маркетплейса, в которые входят решения, использующие «Клиент/сервер».

Где применяется

Отрасли, в которых «Клиент/сервер» используется на практике. Откройте отраслевой раздел Цифрового маркетплейса, чтобы увидеть подходящие решения, кейсы и новости.

Частые вопросы про Клиент/сервер

В чём главное отличие клиент-серверной архитектуры от мейнфреймов?

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

Что такое fat client и thin client?

Fat client (толстый клиент) содержит значительную бизнес-логику локально. Thin client (тонкий клиент) – минимальный, вся логика на сервере. Браузер – классический thin client.

Чем 2-tier отличается от 3-tier?

В 2-tier клиент напрямую обращается к БД. В 3-tier между ними стоит сервер приложений, содержащий бизнес-логику. 3-tier проще масштабировать и безопаснее.

Актуальна ли клиент-серверная архитектура в эпоху микросервисов?

Да. Микросервисная архитектура – это расширение клиент-серверного принципа: каждый сервис одновременно является клиентом для одних и сервером для других.

Как клиент/сервер соотносится с облачными вычислениями?

Облачные приложения реализуют клиент-серверную модель, где сервер(а) расположены в облаке. Пользователь получает доступ через браузер (клиент) к облачному backend.

Какие протоколы используются в клиент-серверном взаимодействии?

HTTP/HTTPS для веб, REST и GraphQL для API, gRPC для высокопроизводительных сервисов, WebSocket для двунаправленного стриминга, SQL-протоколы для СУБД.