Файл: «Вариант 21. Модель клиент-сервер».pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 18.06.2023

Просмотров: 105

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Задачей высокопрофессиональных кадров, связанных с информационными технологиями, в этом контексте было объединение возможностей персональных компьютеров с тем функционалом, который может предоставить мощный центральный компьютер. Для достижения этой цели на начальном этапе было использование персональных компьютеров в роле представляющих гибкий интерфейс терминалов. [3] При использовании этого метода в ПК, который использует особый протокол связи с центральным компьютером, может быть запущено немодальный виртуальный процесс работы терминала. Это позволяет получить рабочую архитектуру, способную содержать в себе все преимущества мощного центрального компьютера на персональном компьютере, который может эксплуатироваться как обычно. Это позволяет не использовать в рабочем пространстве две независимые архитектуры (что может привести к путанице), однако все недостатки мощных центральных компьютеров всё ещё остаются. [3]

Помимо этого, хотя персональные компьютеры, имеющие дисплеи с картой VGA, позволяют работать с графикой, однако использовать их в качестве графического терминала большой центральной машины неудобно. Задача выполняется в центральном компьютере и по проводам передаются графические образы экрана. Эти образы довольно велики и скорость смены изображения на экране может быть очень низкой. Следующим шагом в решении описанной выше проблемы явилось использование архитектуры клиент-сервер. В такой архитектуре все компьютеры сети разделены на 2 группы: клиенты и серверы. Компьютер-сервер - это мощный компьютер с большой оперативной памятью и большим количеством дискового пространства. [5] На нем хранится база данных и выполняется сложная обработка, требующая больших вычислительных ресурсов. На компьютерах-клиентах выполняются первичная обработка данных при вводе, форматирование данных, а также окончательная (финишная) обработка данных, извлеченных с сервера. В качестве компьютеров-клиентов обычно используются персональные компьютеры типа IBM PC или Macintosh.

Преимущества архитектуры клиент-сервер очевидны. Каждый тип компьютера используется по своему назначению, а следовательно, обеспечивается более полное использование возможностей компьютеров.[5] На компьютерах-клиентах работают знакомые пользователям PC пакеты, позволяющие предоставлять результаты работы всей системы в удобном для анализа и принятия решений виде. На этих компьютерах легко можно реализовать дружественный пользовательский интерфейс приложения, использующий графику, цвет, звук, работу с окнами и мышью и т.д. Компьютер-клиент позволяет быстро выполнять ввод и первичный контроль данных. [5] Для финишной обработки данных могут использоваться те редакторы или пакеты электронных таблиц, которые пользователь считает наиболее удобными. В качестве компьютеров-клиентов могут одновременно использоваться компьютеры разных типов с различными операционными системами.


Архитектура клиент-сервер позволяет реализовать распределенную обработку, поскольку часть работы (интерфейс с пользователем, финишная обработка) выполняется на компьютере-клиенте, а часть - на компьютере-сервере. Это позволяет снизить загрузку сервера и оптимизировать его работу, а также увеличить число клиентов, одновременно работающих с сервером. Наиболее часто архитектура клиент-сервер применяется для приложений, созданных с использованием систем управления базами данных (СУБД). [7]

Дальнейшим развитием архитектуры клиент-сервер явилось использование в сети не одного, а нескольких серверов баз данных. Это позволило перейти от работы с локальной БД к работе с распределенной БД. Причем работа с распределенной базе данных (БД) "прозрачна" для пользователя, т.е. он работает с ней так же, как с локальной БД, не задумываясь о том, на каком сервере лежат его данные. [7]

Пользователь использует один сервер, а если он не найдёт необходимую информацию на своих страницах, то в этом случае он запрашивает данные с других серверов. Многохостовая модель связи в наши дни является очень перспективной т. к. дает возможность поменять главную производительную ЭВМ на некоторое количество менее мощных и, следовательно, более дешевых, и еще больше распараллелить обработку данных. Кроме того, такая архитектура увеличивает безопасность модели в целом, ведь если выйдет из строя один хост, то нагрузка может быть распределена между другими, и приложения смогут продолжить работу. [7] В случае, если промежуток местной или глобальной сети вышел из строя, устройство будет стараться отыскать другое направление к конечным данным (по остальным путям ЛВС). С другой стороны, местные сервера сохраняют информацию, которая задействуется подавляющее большинство времени в глобальном модуле - это дает возможность уменьшить раздачу информации по сети от сервера к серверу.

1.3 МОДЕЛИ КЛИЕНТ-СЕРВЕР

На сегодняшний момент есть, как минимум, три строения клиент-сервер:

  1. Модель доступа к удаленным данным (RDA-модель);
  2. Модель сервера базы данных (DBS-модель);
  3. Модель сервера приложений (AS-модель).

Строение 1 и 2 классифицируются как двухзвенные и не имеют возможности применения как основное строение распределенной системы, а строение 3 — трехзвенное. [5] Также как остальное многозвенное строение, оно выгодно, т. к. в данной модели части для непосредственного контакта с потребителем абсолютно не зависят от составляющей разбора информации. [8] В общем, трехзвенной ее справедливо называть потому, что в ней определенно присутствуют следующие компоненты:


  • Составляющая диалога с потребителем;
  • ПО среднего уровня (middleware);
  • Составляющая поиска и обработки информации.

Middleware — основная составляющая трехзвенного дистрибутивного устройства. Данная утилита обладает возможностью контроля переводов и связи, перемещения обработки данных, контроля информации, а также другими возможностями. Есть одно очень важное отличие возможностей "сервер запросов — клиент запросов" и трехзвенных технологий : в начальном примере клиент посылает запрос на конкретную информацию, т. к. осведомлен о строении информационного хранилища (это действие именуется "поставкой данных" клиенту). Клиент делает SQL-запрос системе управления базами данных и после она их отправляет, в результате происходит непременное соединение алгоритмов, в качестве исполнения которой все системы управления базами данных пользуются скрытым SQL-каналом. [8]

Данный канал создается несколькими процессами: SQL/Net на компьютере-клиенте и SQL/Net на компьютере-сервере и производится с помощью утилиты connect по желанию пользователя. Канал является закрытым т. к. нет возможности, к примеру, создать утилиту, которая станет кодировать SQL-запросы с помощью определенного кода или другим образом будет вмешиваться в процесс передачи данных между клиентским и серверным приложением. [5]

В случае трехзвенной схемы клиент явно запрашивает один из сервисов (предоставляемых прикладным компонентом), например, передавая ему некоторое сообщение, и получает ответ также в виде сообщения. Клиент направляет запрос во внешнюю среду, ничего не зная о месте расположения сервиса. Имеет место так называемая "поставка функций" клиенту. [7]

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


1.4 ТОЛСТЫЙ И ТОНКИЙ КЛИЕНТЫ

Как значится в словаре, тонкий клиент - это клиентское устройство (или программа), передающее большую часть исполняемых им функций серверу. Толстый клиент определить намного проще - это все клиенты, не являющиеся тонкими. [7]

Тонкий клиент (thin client) — терминал сети без жестких дисков, вычислительная мощность которого и объем памяти определяются задачами пользователя. Все программы и приложения, хранящиеся на сервере, становятся доступными для пользователя при включении его устройства и выполнении процедуры регистрации на сервере. Тонким клиентом называют также ПК (в том числе и мобильный) с минимизированной мощностью процессора, оперативной и внешней памятью, позволяющий пользователю осуществлять ввод и отображение данных за счет выполнения вычислений и сохранения данных на более мощном ПК или сервере, с которыми он может осуществлять связь при помощи каналов средней пропускной способности. [7]

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

Лучший пример тонкого клиента — Web-браузер, настолько универсальный, что способен подключаться к абсолютно разным прикладным программам, о которых "не знает" ничего, и, тем не менее обеспечивать приемлемый интерфейс пользователя. Вся концепция сетевого компьютера строится на идее создания дешевого небольшого устройства, на котором будет работать Web-браузер:

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

Преимущества и недостатки данного подхода можно представить в виде таблицы.

Преимущества

Недостатки

Ещё меньшая мощность компьютеров-клиентов

Усложняется разработка программного обеспечения

Ещё дешевле при большом количестве клиентов

Усложняется администрирование программного обеспечения

Ещё меньшая нагрузка на сеть

Более дорогой сервер

Ещё реже требуется обновление ПО на клиентах

При повреждении сервера останавливается работа всех клиентов

Таблица 1. Преимущества и недостатки тонких клиентов

Технология «тонкий клиент-сервер» базируется на трех основных составляющих:

  • Стопроцентное выполнение прикладных задач на терминальном сервере,
  • Многопользовательская операционная система,
  • Технология распределенного отображения пользовательского интерфейса приложений.

Пользователи имеют возможность одновременно заходить в систему и выполнять приложения на сервере в разных, защищенных друг от друга сессиях сервера.[5] В системе с использованием тонкого клиента по сети или коммутируемой телефонной линии на сервер передаются сигналы, отражающие нажатие на ту или иную клавишу либо то или иное движение мыши. А сервер производит соответствующие действия и формирует изменения экрана пользователя и передаѐт эти изменения тонкому клиенту. [5]

Тонкий клиент принимает от сервера видоизменённое отображение экрана и проецирует его на устройство (в утилитах нашего времени посылается как видоизмененный экран целиком, так и только доля проекции, в соответствии с необходимостью, с помощью которой ПО тонкого клиента проецирует новое изображение). В качестве клиента могут быть различные персональные компьютеры, однако, т. к. он поддерживает очень малое количество возможностей для редактирования информации, а как тонкий клиент также есть возможность использовать  небольшие терминалы, располагающие маленькой вычислительной мощностью, не имеющие устройств с подвижными составляющими (жесткие диски, вентиляторы), располагающие, обычно, компонентами, имеющие существенные ограничения по объемам памяти (ОЗУ). [3]

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