Клиент-серверная архитектура (курсовая) (548451), страница 7
Текст из файла (страница 7)
[18]2.3.Клиент-серверные вычисления.В 1970-х и 1980-х годов была эпоха централизованных вычислений намэйнфреймах IBM занимающих более 70% в компьютерном бизнесе мира.Бизнес транзакции, деятельности и базы данных, запросы и техническоеобслуживание - все исполнялось на мэйнфреймах IBM. Этап перехода кклиент-серверным вычислениям представляет совершенно новую концепциюи технологию реорганизации всего делового мира. Вычислительныепарадигмы 1990-х годов называли «волной будущего».40Машина-клиент обычно управляет интерфейсами процессов, таких какграфическийинтерфейс(графическийпользовательскийинтерфейс),отправкой запросов на сервер программ, проверкой данных, введенныхпользователем, а также управляет местными ресурсами, а пользовательвзаимодействует с такими, как монитор, клавиатура, рабочие станции,процессора и других периферийных устройств.
С другой стороны, сервервыполняет запрос клиента, с помощью службы. После того как серверполучает запросы от клиентов, он выполняет поиск базы данных, обновленияи управляет целостностью данных и отправляет ответы на запросы клиентов.Цель клиент-серверных вычислений - позволить каждой сетевой рабочейстанции (клиента) и принимающей (сервера) быть доступными, по меренеобходимости приложения, а так же обеспечивать доступ к существующемупрограммному обеспечение и аппаратным компонентам от различныхпоставщиков для совместной работы. Когда эти два условия соединены,становятся очевидными преимущества клиент-серверной архитектуры, такиекакэкономиясредств,повышениепроизводительности,гибкостиииспользования ресурсов.Клиент-серверныеклиентскогопроцесса,вычислениясостоятзапрашивающегоизтрехобслуживаниекомпонентов,исерверногопроцесса предоставления запрашиваемых услуг, с Middleware между нимидля их взаимодействия.КлиентМашина клиент обычно управляет пользовательским интерфейсомчастей приложения, проверкой данных, введенных пользователем, отправкойзапросов на сервер программы.
Кроме того, клиентский процесс такжеуправляетместнымивзаимодействоватьсресурсами,монитором,чтопозволяетклавиатурой,рабочимипроцессорами и другими периферийными устройствами.Сервер41пользователюстанциями,Машина Сервер выполняет служебные запросы клиента. После тогокак сервер получает запросы от клиентов, он производит поиск базы данных,обновления, управляет целостностью данных и отправляет ответы на запросыклиентов. Серверных процесс может работать на другой машине в сети;тогда сервер используется как файловая система услуг и приложенийсервисов.
Или в некоторых случаях, другой рабочий стол машиныобеспечивает применение услуг. Сервер выступает в качестве программногообеспечения двигателя, который управляет общим ресурсам, таким как базыданных, принтеры, линии связи, или процессоров высокой мощности.Основная цель серверного процесса - выполнение фоновых задач, которыеявляются общими для приложений.Простейшая форма серверов - это дисковый сервер и файл-сервер. Есликлиент передает запросы на файл или группы файлов по сети на файловыйсервер, эта форма обслуживания данных требует большой пропускнойспособности и может замедлить сеть с большим количеством пользователей.Более продвинутые формы серверов - это серверы баз данных, сервертранзакций и серверов приложений.MiddlewareMiddleware позволяет приложениям прозрачно контактировать сдругими программами или процессами независимо от местоположения.Ключевым элементом Middleware является NOS (Network Operating System),которая предоставляет такие услуги, как маршрутизация, распределение,обмен сообщениями и управления сервисной сети.
NOS полагается накоммуникацию протоколов предоставления конкретных услуг. Прежде чемпользователь может получить доступ к услугам сети, клиент-серверныйпротокол требует установку физического соединения и выбор транспортныхпротоколов. Клиент-серверный протокол диктует, каким образом клиентызапрашивают информацию и услуги от сервера, а также как сервер отвечаетна эту просьбу.422.3.1. Пирамида модели «клиент-сервер»Мартин Батлер, председатель Butler Group предложил новые рамки дляреализации клиент-серверной стратегии. Это пятислойная модель подназванием VAL (Value Added Layers) Модель.
Основная структуранапоминает по форме пирамиду, со слоями Инфраструктура и Middleware внижней части пирамиды, а приложения, хранилища и бизнес модели навершине.Характеристики каждого слоя:Уровень 1 - Инфраструктура слояСлой инфраструктура состоит из всех тех компонентов, которыеявляются пассивными и не выполняет бизнес-функции. Примеры относятся кэтойкатегориикомпьютерныхоперационныхсистем,пользовательских интерфейсов и системы управления базой данных.43сетей,Уровень 2 - MiddlewareMiddleware позволяет приложениям прозрачно коммуникатировать сдругими программами или процессами независимо от их местоположения.Это средство отображения приложений используемых ими ресурсов.Middleware является ключом к интеграции гетерогенных аппаратных ипрограммных сред, обеспечивая тот уровень интеграции, который необходиммногие организациям. Типичные Middleware проявляются после сетевыхсоединений, соединений с базой данных и осуществляют взаимодействиемежду базой данных и приложениями.Уровень 3 - ПрограммыПриложения являются активными компонентами, которые выполняютработы по организации, и именно сюда, многие компании инвестируютбольшое количество усилий, времени и денег.
Приложения, которые неимеют ключевого значения. Они все чаще приобретаются как готовый пакет.Приложения же, которые являются жизненно важными для увеличенияконкурентоспособности компании в отрасли, разрабатываются на месте.Уровень 4 - ХранилищеРоль хранилища - изоляция бизнес-модели / спецификации оттехнологическихинструментов,которыеиспользуютсядляееосуществления.Уровень 5 - Бизнес-моделиБизнес-модель должна быть независимой, чтобы все технологии,которые используются для ее осуществления были применимы к аппаратнойи программной среде в зависимости от того, что является наиболееподходящим. Это будет все больше и больше опираться на объектноориентированные методы, и уже существует поколение инструментов,которые поддерживают объект моделирования.442.3.2.
Важность сетиДля того чтобы связать клиентов и серверов вместе и в полной мереиспользовать ресурсы, содержащиеся в каждой машине, мы должныразработать сетевую систему, которая на это способна. Сети должны бытьпрозрачны для пользователей. Сети и приложения должны работать вместетак же хорошо, как если бы они работали на одном компьютере. Кроме того,сеть должна обеспечить возможности самовосстановления, чтобы можнобыло перенаправить сетевой трафик вокруг испорченного кабеля и бытьдостаточно гибкой, чтобы реагировать на бизнес-изменения в окружающейсреде.Для простоты используются локальные сети LAN.
Сейчас существуеттри различные LAN топологии: звезда, кольцо и шина и, по крайней мере,пять конкурирующих стандартов для передач, и два стандарта дляинформации, необходимой для управления сетью. Локальные сети сталинастолько сложными, что они требуют собственную операционную систему.Сеть продолжает быть одним из наименее изученных и наиболееважным из компонентов в информационной структуре организации.Большинство организаций, приверженных клиент-серверной архитектуресогласны, что связь локальных сетей не место, чтобы сэкономить деньги. Мыне должны пытаться связать несовместимые локальные сети с различнымиплатформами.Программноеобеспечение,аппаратноеобеспечениеиоперационная система, используемая в сети, должны быть тщательнопротестированы.2.3.3.
Открытые системы и стандартыОдна из наиболее важных особенностей клиент-серверной архитектуры- это открытость системы. Открытой системе соответствует широкий наборформальныхстандартовиподдержкаплатформыотразличныхпроизводителей. Открытые системы требует принятия стандартов в рамкахвсей организации. Открытую систему делает успешной открытые стандарты45системы,которыедолжныбытьприемлемымидляобеихсторон:пользователей и производителей систем и будут приняты на всех уровняхорганизацииДля того чтобы все эти компоненты работали вместе как сложнаясистема, мы должны придерживаться нескольких видов стандартов. Имеютсяввиду стандарты в четырех областях клиент-серверных вычислений, такихкак платформы (программного и аппаратного обеспечения), сети, Middlewareи приложения. Спецификации стандартов должны быть разработаны наоснове консенсуса и быть общедоступными Стандарты должны бытьвсеобъемлющими и последовательными и определять интерфейсы, услуги иподдержку форматов для достижения совместимости.
В настоящее времяесть несколько консорциумов, работающих в разработке стандартов дляоткрытых систем. -OSF (Open Software Foundation) - некоммерческий консорциумкомпьютерныхпроизводителей,разработчиковпрограммногообеспечения и поставщиков чипов для разработок, основанных настандартах программного обеспечения. UNIX-International-консорциумпроизводителейкомпьютеров,разработчиков программного обеспечения, целью которых являетсясоздание UNIX и связанных с ними стандартов разработки илицензирования продуктов UNIX. -OMG-международныеразработчиковорганизациипрограммногосистемыобеспеченияипоставщиков,пользователей,сторонники развертывания объекта управления технологиями вразработке программного обеспечения. Применяя общую основу длявсех объектно-ориентированных приложений, организации смогутуправлять гетерогенными средами.CORBA (Common Object Request Broker Architecture), разработаннаяOMG, DEC, NCR, HP и SUN является новым механизмом, которыйпозволяет объектам (приложениям) называть друг друга по сети.46 -SQL Access Group - это промышленный консорциум работает надопределениемиосуществлениятехническихусловийдлягетерогенного доступа SQL данных с использованием принятыхмеждународных стандартов.
[19]2.4.Модель клиент - сервер в ИнтернетеВзаимодействие клиента и сервера в Интернете осуществляется спомощью запросов, посылаемых клиентом серверу, и ответов сервера назапрос клиента:Сутьраспределенныхсистемсвязь-междупроцессами,реализующими не только взаимодействие компьютеров, но и частей(уровней) приложений. Взаимодействие частей приложений реализуется спомощьюпротоколов,пересылаемыхописывающихсоответствующимисоставчастямииформатклиентскихиданных,серверныхприложений друг другу для решения поставленной задачи. В Интернетеразбиение приложений на части осуществляется на базе стека протоколовTCP/IP:47В этой модели разработчики имеют большую свободу в определении того,какие части клиент-серверного приложения будут на клиентском компьютереи какие на сервере.