logo
Вопросы и ответы нах / Komp_seti

Компоненты архитектуры Клиент-сервер

Существуют три основных программных компонента архитектуры клиент-сервер :

ПО конечного пользователя.

промежуточное обеспечение.

ПО сервера.

К ПО конечного пользователя относятся средства разработки программ и генераторы отчетов, в том числе электронные таблицы и текстовые процессоры. С помощью этого ПО пользователи устанавливают связь с серверами, отправляют на рассмотрение серверу запросы и получают ответную информацию.

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

Под ПО сервера подразумевается операционная система и конкретный сервер БД, используемый для обработки запросов клиентской части информационной системы.

Серверы баз данных занимаются не только обслуживанием данных. В них предусмотрены также механизмы блокировок и элементы управления многопользовательским доступом, которые обеспечивают защиту данных от опасности параллельного доступа. Кроме этого, серверу баз данных приходится ограждать данные от несанкционированного доступа, оптимизировать запросы к базе данных, обеспечивать кэширование и предоставлять место для размещения словаря данных. Две другие важные особенности, на которые стоит обратить внимание, - способность сервера обеспечивать целостность ссылочных данных и обоюдный контроль завершения транзакции. Ссылочная целостность данных (referential integrity) - это механизм, обеспечивающий каждому внешнему ключу соответствующий первичный ключ. Обоюдный контроль завершения транзакций (two-phase commit) - гарантия того, что ваши данные не будут повреждены даже при аппаратном сбое. С помощью хранимых процедур, триггеров и правил разработчики могут составить программу непосредственно самого сервера баз данных и, таким образом, появляется еще одно место для размещения логики программы. Хранимые процедуры (stored procedures) - это группа предложений на языке SQL и процедурная логика, которые разработчики могут компилировать и хранить на сервере баз данных в качестве объектов. Программы-клиенты способны выполнять хранимые процедуры, также как и другой вид хранимых процедур или триггеров, путем посылки сообщений серверу баз данных.

Реальное распространение архитектуры "клиент-сервер" стало возможным благодаря развитию и широкому внедрению в практику концепции открытых систем. Поэтому мы начнем с краткого введения в открытые системы.

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

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

Одноранговая вычислительная сеть (одноранговая ЛВС, децентрализованная ЛВС, пиринговая сеть; peer-to-peer LAN, peer LAN, P2P) — «безсерверная» организация построения сети, которая допускает включение в нее как компьютеровразличной мощности, так и терминалов ввода-вывода. Термин «одноранговая сеть» означает, что все терминалы сети имеют в ней одинаковые права. Каждый пользователь одноранговой сети может определить состав файлов, которые он предоставляет для общего использования (так называемые public files). Пользователи одноранговой сети могут работать как со всеми своими файлами, так и с файлами, предоставляемыми другими ее пользователями. Подключение отдельных ЭВМ в одноранговую сеть производится преимущественно высокочастотными коаксиальными кабельными линиями связи. Известны три основных варианта топологии одноранговой сети — «шина», «кольцо», «звезда». Создание одноранговой сети обеспечивает наряду с взаимообменом данными между включенными в нее ЭВМ совместное использование части дискового пространства (через public files), а также совместную эксплуатацию периферийных устройств (например, принтеров). Одна из ЭВМ может временно брать на себя функции «сервера», а другие работать в режиме «клиентов». Эти возможности используется в обучающих системах. Поиск в развитой децентрализованной сети выполняется сначала у соседей (neighbours), с которыми соединение производится напрямую, затем — у соседей соседей. Достоинствами одноранговых ЛВС являются относительная простота их установки и эксплуатации, умеренная стоимость, возможность развития (например, по числу включенных терминалов), независимость выполняемых вычислительных и других процессов для каждой включенной в сеть ЭВМ.

После появления в 1999 году в Интернете специализированного сервиса по обмену музыкальными файлами (файлообменная система Napster) стали популярными приринговые сети, которые предназначены для обмена файлами между их пользователями и работают по технологии P2P. Общий принцип работы распределенных пиринговых сетей следующий: клиентская программа передает в сеть списки файлов, которые она может предоставить для скачивания и которые она хочет получить. При этом, если поиск подходящих партнеров осуществляется с помощью сервера, а сами данные качаются напрямую, то такая модель называется централизованной. Если любые компьютеры сети могут одновременно выполнять функции и клиентов и серверов, то такая модель называется децентрализованной. Сеть, поддерживающая оба режима работы, называется гибридной.

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

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

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

Преимущества одноранговых сетей:

Распределенная сеть (распределенная вычислительная сеть; WAN, Wide-Area Network) — группа размещенных на большом расстоянии друг от друга компьютеров, в том числе как отдельных, так и их локальных сетей, соединенных линиями проводной (кабельной) и/или радиосвязи.

Распределенные сети

 Еще один сектор рынка локальных сетей, на котором Novell далеко не лидер — распределенные сети, позволяющие для решения сложных вычислительных задач одновременно использовать объединенные мощности нескольких серверов. При этом для пользователя безразлично, работает он с одной машиной или несколькими. Таким образом иногда удается сэкономить значительные средства: более мощный компьютер может стоить дороже, чем несколько компьютеров послабее, в совокупности предоставляющих пользователю те же возможности.        На мировом рынке конкурентом Novell в этом секторе рынка выступают фирмы Banyan Systems c сетевой операционной системой VINES (VIrtual NEtworking System) и Microsoft с системой LAN Manager.        До последнего времени VINES была недоступна российским пользователям из-за ограничений КОКОМ на ввоз в Восточную Европу и СНГ сетей с количеством пользователей более 200. А пиратскому распространению VINES в России препятствовал высокий уровень ее сложности. Сейчас, когда ограничения сняты, распространением этого продукта в России занимается немецкая фирма Soft-Тronic. По данным фирмы, с 1 апреля VINES для 5 пользователей стоит $1645, для 10 — $3185, VINES Unlimited (от 100 и выше) — $9345. По сравнению с началом года цены повысились, но незначительно.

 Специфика построения распределенных сетей позволяет использовать их в организациях, территориальные подразделения которых удалены друг от друга: в правительственных и муниципальных учреждениях, военных и полицейских подразделениях, крупных компаниях. Среди пользователей VINES, например, сети ВМС и министерства финансов США, фирм Compaq, Intel, Johnson & Johnson, Nike и др. По мнению специалистов Soft-Тronic, VINES и в России имеет перспективы — за счет некоторых преимуществ перед NetWare.

       Пользователи сетей VINES могут получать прямой доступ к ресурсам не только "своего" сервера, но и серверов, поддерживающих другие участки. Это позволяет устанавливать дорогостоящее оборудование (например, слайд-принтеры) только на одном из участков сети, а использовать его совместно. База данных пользователей, ресурсов и идентификаторов едина, и вы под тем же именем можете воспользоваться сетью, например, и в Москве и в Торонто, при этом права пользователя не изменятся.

 Такая система весьма демократична, но в то же время может обеспечить усиленный режим защиты от несанкционированного доступа на каждый элемент сети: диск, удаленный принтер, модем.        VINES изначально ориентирована на глобальные сети и позволяет по мере необходимости наращивать ресурсы системы практически без ограничений. В качестве операционной системы центрального компьютера используется UNIX. Все компьютеры сети должны быть не младше 80386.

  1. Протоколы и службы Internet.