Клиент-серверная архитектура

Клиент-серверное приложение разбито на два составляющих процесса:

  • клиент, который просит сервер о какой-либо услуге, отправив ему сообщение с за­просом;
  • сервер, который изучает запрос клиента, выполняет соответствующие действия, а за­тем отправляет назад клиенту сообщение с ответом.

Иногда клиент и сервер могут быть вовлечены в расширенный диалог из запросов и ответов.

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

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

Серверы могут реализовывать различные сервисы, например:

  • предоставление доступа к базе данных или другому совместно используемому ин­формационному ресурсу;
  • предоставление доступа к удаленному файлу по сети;
  • инкапсуляция какой-нибудь бизнес-логики;
  • предоставление доступа к совместно используемым аппаратным ресурсам (например, к принтеру);
  • обслуживание веб-страниц.

Инкапсуляция сервиса на отдельном сервере имеет смысл по нескольким причинам, в числе которых следующие.

  • Рентабельность. Предоставление одного экземпляра ресурса (например, принтера), управляемого сервером, может быть проще предоставления того же самого ресурса локально каждому компьютеру.
  • Управление, координация и безопасность. При содержании ресурса (особенно инфор­мационного) в одном месте сервер может координировать доступ к ресурсу (напри­мер, так, чтобы два клиента не могли одновременно обновлять один и тот же блок информации) или обеспечить его безопасность таким образом, чтобы он был доступен только избранным клиентам.
  • Работа в разнородной среде. В сети различные клиенты и сервер могут быть запущены на различном оборудовании и на разных платформах операционных систем.

 

Вас заинтересует / Intresting for you:

Разработка и исследование инфо...
Разработка и исследование инфо... 1375 просмотров Денис Wed, 27 Mar 2019, 03:15:40
Технологии big data в сервисе:...
Технологии big data в сервисе:... 1133 просмотров Александров Попков Mon, 18 Mar 2019, 05:05:48
Разработка архитектуры информа...
Разработка архитектуры информа... 2615 просмотров Administrator SU Thu, 19 Jul 2018, 15:36:26
Применение принципов и подходо...
Применение принципов и подходо... 1094 просмотров Александров Попков Mon, 18 Mar 2019, 03:13:45
Войдите чтобы комментировать