Клиент (информатика)

В информационных технологиях клие́нт — это аппаратный или программный компонент вычислительной системы, посылающий запросы серверу.

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

Разновидностью клиентов являются терминалы — рабочие места на многопользовательских ЭВМ, оснащённые монитором с клавиатурой, и не способные работать без сервера. В 90-е годы появились сетевые компьютеры — нечто среднее между терминалом и персональным компьютером. Сетевые компьютеры имеют упрощённую структуру и во многом зависят от сервера.

Тем не менее, не всегда под клиентом подразумевается компьютер со слабыми вычислительными ресурсами. Чаще всего понятия «клиент» и «сервер» описывают распределение ролей при выполнении конкретной задачи, а не вычислительные мощности. На одном и том же компьютере могут одновременно работать программы, выполняющие как клиентские, так и серверные функции. Например, веб-сервер может, в качестве клиента, получать данные для формирования страниц от SQL-сервера (так работает Википедия).

Интересные факты

В X Window System сервером называется программа, которая реализует графический интерфейс пользователя, а клиентом — программа, использующая этот интерфейс. Поэтому, на тонком клиенте может работать сервер X Window System, отображающий результаты работы клиентской программы, выполняющейся на сервере приложений. С точки зрения пользователя это не совсем обычно, так как сервер обычно является удалённым, а клиент — локальным приложением.

См. также