Файл: Определение сервера и клиента.pdf

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

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

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

Добавлен: 19.06.2023

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

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

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

Введение

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

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

В связи с данными посылами в конце XX века (в 90-х годах) была создана модель «Клиент-сервер», которая считается одной из технологий реализации программных приложений. Особенность предоставленной технологии заключается в дроблении приложения на 2 уровня: 1-ый – клиент -предоставление данных и 2-ой - сервер БД - хранение данных. На «Клиенте» происходит обработка информации, на «Сервер» отправляются запросы и обрабатываются в согласовании приобретенных в ответ на них данные. Предоставленная разработка дает возможность скорого размена информацией между юзером и ресурсами.

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

Невзирая на стремительный подъем научно-технического процесса и выходу в свет новейших сетевых технологий до сих пор большой интерес уделяется архитектуре «Клиент-Сервер», потому что большая часть передовых систем основываются на данной технологии.

Сообразно мерке подъема популярности систем "клиент-сервер" набирала мощь и разработка объектно-ориентированного программирования, которая предлагала перейти к системной архитектуре с 3-мя слоями: слой представления отводится пользовательскому интерфейсу, слой предметной области специализирован для описания главных функций приложения, нужных для достижения установленной пред ним цели, а 3-ий слой представляет источник данных.

С выходом в свет Web всем в один момент захотелось располагать системами "клиент-сервер", где в роли клиента выступал бы Интернет-браузер. Явившиеся инструментальные средства конструирования Web-страниц были в наименьшей степени связаны с SQL и потому наиболее подходили для реализации третьего уровня.


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

Опыт последних лет исследования программного обеспечения (ПО)

указывает, что архитектура информационной системы обязана выбираться с учетом нужд бизнеса, а не собственных увлечений разработчиков.

Не тайна, что верная и точная организация информационных бизнес-

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

Сначало системы такого значения базировались на традиционной двухуровневой клиент-серверной архитектуре (Two-tierarchitecture).

Целью предоставленной работы является изучение и раскрытие построения сетевой технологии модели «Клиент-Сервер».

В процессе изучения и достижения установленной цели были решены последующие задачи:

- исследование научно-технической литературы по этому вопросу;

- разъяснение понятий «Клиент», «Сервер», «Сетевая технология»;

- раскрытие основ построения архитектуры модели «Клиент-Сервер»;

- исследование основ функционирования модели «Клиент-Сервер»;

- внедрение технологии «клиент – сервер» сейчас.

Предметом и объектом изучения является архитектура модели «Клиет-Сервер».

Глава 1.

Определение сервера и клиента

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


Рис.1. Вычислительная сеть как сложный комплекс взаимосвязанных программных и аппаратных компонентов[1].

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

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

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

■ как просто предоставленная операционная система имеет возможность взаимодействовать с иными сетевыми операционными системами;

■ какую она гарантирует степень сохранности и безопасности данных;

■ до какой степени позволяет увеличивать количество юзеров;

■ позволительно ли перенести её на компьютер иного вида и многие другие суждения.

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

В настоящее время большая часть сетей использует модель клиент- сервер. Сеть архитектуры клиент-сервер — это сетевая среда, в которой компьютер-клиент активизирует запрос компьютеру-серверу, исполняющему данный запрос. Рассмотрим работу модели на образце системы управления БД — приложения, нередко применяемого в среде клиент-сервер. В модели клиент-сервер программное обеспечение (ПО) клиента применяется язык структурированных запросов SQL (Structured Query Language), который переводит запрос с языка, ясного юзеру, на язык, понятный машине. SQL недалёк к естественному английскому.


Клиент (юзер) генерирует запрос с помощью интерфейсного приложения, которое гарантирует интерфейс юзера, сформировывает запросы и показывает данные, приобретенные с сервера.

Сервер (от англ. server, обслуживающий). В зависимости от предназначения существует некоторое количество определений понятия сервер.

1. Сервер (сеть) — логический либо физический узел сети, обслуживающий запросы к одному адресу и/либо доменному имени (смежным доменным именам), состоящий из 1-го либо системы аппаратных серверов, на котором выполняются один или система серверных программ

2. Сервер (программное обеспечение) — программное обеспечение, принимающее запросы от клиентов (в архитектуре клиент-сервер).

3. Сервер (аппаратное обеспечение) — компьютер (либо особое компьютерное оборудование) выделенный и/либо специализированный для исполнения конкретных сервисных функций.

3. Сервер в информационных технологиях — программный составляющую вычислительной системы, исполняющий сервисные функции сообразно запросу клиента, предоставляя ему доступ к определённым ресурсам.

Взаимозависимость понятий. Серверное приложение (сервер) запускается на компьютере, так же именуемом "сервер", при данном рассмотрении топологии сети, такой узел именуют "сервером". В едином случае имеет возможность существовать так, что серверное приложение запущено на обыкновенной рабочей станции, либо серверное приложение, запущенное на серверном компьютере в рамках рассматриваемой топологии выступает в роли клиента (т.е. не считается сервером с точки зрения сетевой топологии).

1.2 Модель клиент-сервер

Понятия сервер и клиент и прикрепленные за ними роли образуют программную теорию «клиент-сервер». Модель клиент-сервер - это ещё один подход к структурированию Операционной системы (ОС). В широком значении модель клиент-сервер подразумевает присутствие программной составляющей - потребителя какого-либо сервиса - клиента, и программная составляющая - поставщика данного сервиса - сервера. Взаимодействие меж клиентом и сервером стандартизуется, так что сервер имеет возможность обслуживать клиентов, реализованных разными методами и, имеет возможность быть, различными изготовителями. При этом основным требованием считается то, чтоб они запрашивали услуги сервера ясным ему методом. Организатором обмена традиционно считается клиент, который отправляет запрос на обслуживание серверу, пребывающему в состоянии ожидания запроса. Одна и та же программная составляющая имеет возможность быть клиентом сообразно отношению к одному виду услуг, и сервером для иного вида услуг. Модель клиент-сервер считается скорее удобным концептуальным средством понятного представления функций того либо другого программного компонента в той либо другой ситуации, ежели технологией (Рис.2)


Рис.2. Модель «Клиент-Сервер»[2]

Данная модель удачно используется не только при построении ОС, но и на всех уровнях программного обеспечения, и владеет в некоторых вариантах наиболее узким, специфичным смыслом, сохраняя, естественно, при этом все собственные единые черты. Употребительно к структурированию ОС мысль состоит в разбиении её на несколько процессов - серверов, любой из которых исполняет единичный комплект сервисных функций - к примеру, управление памятью, создание либо планирование действий. Любой сервер выполняется в пользовательском режиме. Клиент, коим имеет возможность быть или иной компонент ОС, или прикладная программа, запрашивает сервис, посылая извещение на сервер. Ядро ОС (именуемое здесь микроядром), работая в привилегированном режиме, доставляет извещение нужному серверу, сервер исполняет операцию, после чего ядро отдаёт результаты клиенту с помощью иного извещенья (Рис.3).

Рис.3. Модель клиент-сервер в распределенной системе[3]

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

Формат запросов клиента и ответов сервера ориентируется протоколом. Спецификации открытых протоколов описываются открытыми стандартами, к примеру, протоколы Веба ориентируются в актах RFC.

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

1.3. Понятие прикладных протоколов

Нужно различать понятия сетевых приложений и протоколов практического значения. Протоколы практического значения считаются частью (хотя и очень большой) сетевых приложений. Рассмотрим 2 примера. Интернет считается сетевым приложением, позволяющим пользователям получать интернет-документы по запросу и состоящим из большого колличества компонентов, включая стандарт формата документов (HTML), браузеры (Netscape Navigator, Microsoft Internet Explorer и др.), интернет-серверы (например, Apache, Microsoft либо Netscape), протоколы практического значения. Протокол практического значения для web носит название протокола предоставления гипертекста (HyperText Transfer Protocol, HTTP) и обрисовывает формат и распорядок размена извещениями меж клиентом и сервером (RFC 2646). Таковым образом, HTTP считается только долею интернет-приложения.