Клиент-серверная архитектура (курсовая), страница 8
Описание файла
PDF-файл из архива "Клиент-серверная архитектура (курсовая)", который расположен в категории "". Всё это находится в предмете "распределённые ис и базы данных" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "распределённые ис и базы данных" в общих файлах.
Просмотр PDF-файла онлайн
Текст 8 страницы из PDF
Логика пользовательского интерфейса существовалапочти исключительно на сервере. Мы можем вновь приступить киспользованию более эффективных и хорошо структурированных клиентсерверных моделей. Есть, конечно, еще технические вопросы, но мы всостоянии лучше строить истинные клиент-серверные приложений внастоящее время.Клиент-серверную модель можно разделить на три части : User Interface - Пользовательский интерфейс Business or Application Logic - Бизнес и логика приложения Data Management - Управление даннымиТрадиционное развитие веб-приложений распространило реализациипользовательского интерфейса в сети, причем большая часть логикиинтерфейса пользователя и код выполняется на сервере (тонкий клиент,толстый сервер).48Этотметодимеетнесколькоключевыхпроблем:Неудовлетворительное распределение обработки - с большим числомклиентов, делает все обработки на сервере неэффективно. Высокая латентность ответа пользователя - традиционные вебприложения не реагируют достаточно быстро.
Высокое качествовзаимодействия с пользователем является очень чувствительным кзадержкам, и очень быстрая реакция имеет важное значение. Труднаямодельпрограммированияпрограммирование-пользовательского интерфейса через клиент-сервер достаточно сложно.Если правила доступа распространяются через пользовательский кодинтерфейса, то при росте кода пользовательского интерфейсавозникают новые векторы атаки.Сложное управления на серверах.Offlineтрудности.Кодпользовательскогоинтерфейсадолженвыполняться на клиенте и в автономном ситуациях.Снижение возможностей для взаимодействия. Когда клиент-серверсостоит из передачи внутренней части пользовательского интерфейса вбраузере, бывает очень трудно понять эту связь и использовать ее длядругих приложений.49Необходимо решить, какой код должен работать на клиенте, а какой насервере.
Коду пользовательского интерфейса лучше работать на браузере, абизнес-логике и управлению данными лучше работать на стороне сервера.Хорошийдизайнвключаетвсебясозданиеобъектов,которыеинкапсулируют большую часть своего поведения и минимальной площадиповерхности.Ондолженбытьинтуитивнопонятнымилегковзаимодействовать с хорошо разработанным интерфейсом объекта. Крометого, клиент-серверное взаимодействие должно быть построено на хорошопродуманноминтерфейсе.Проектированиемодульныхудаленныхинтерфейсов часто называют сервис-ориентированной архитектурой (SOA).Клиент-серверная реализация высокого качества должна иметь простойинтерфейс между клиентом и сервером.
На стороне клиента долженинкапсулировать презентации и код взаимодействия с пользователем. Код насторонесерверадолженинкапсулироватьправилаповеденияивзаимодействия данных. Веб-приложения должны быть разделены на дваосновных элемента, пользовательский интерфейс и веб-сервис.Преимущества чистой модели клиент-сервер:Масштабируемость.
Чем больше клиентов, которые используютприложения, тем больше клиентских машин, которые доступны,в то время как сервер остается постоянным.50Немедленныйответпользователя.Клиентскийкодможетнемедленно реагировать на действия пользователя, а не ждатьдля передачи данных по сети.Организованнаямодельпрограммирования.Такаямодельобеспечивает более чистый подход к безопасности.
Когда всезапросы идут через код пользовательского интерфейса, данныемогут передаваться через различные интерфейсы до проверкибезопасности. Это может сделать анализ безопасности болеесложным. С другой стороны, с понятным интерфейсом вебслужбы есть четко определенные шлюз безопасности для работыи анализа безопасности.Клиентская часть управления - сохранение информации о состояниисессии на клиенте уменьшает нагрузку на сервер. Это такжепозволяетклиентамвзаимодействие,использоватькотороеможетболеееще«спокойное»большеповыситьмасштабируемость и возможности кэширования. Автономные приложения. Если большая часть кода дляприложений уже построена, чтобы работать на клиенте, созданиеавтономной версии приложения почти наверняка будет легче. Взаимодействие.
К структурированным данным с минимальнымиAPI-интерфейсамидлявзаимодействиянамногопрощеподключать дополнительных потребителей и производителей ивзаимодействовать с существующими системами. [19]513. Развитие.3.3.Клиент-серверные вычисления.Технология перехода к клиент-серверным вычислениям проявляется,главным образом, за счет более сложной ситуации в бизнесе в последниегоды, такие как глобальный маркетинг, дистанционные он-лайн продажираспределения, децентрализованной корпоративной стратегии и т.д.
Все этотребует быстрое реагирование, легкий доступ к информации данных, и болееэффективной координации между людьми на всех уровнях как внутри, так ивне организации. Клиент-серверные вычисления позволяют решать все этипроблемы и, следовательно, являются одним из приоритетных вопросов вумах управления ИТ.Ясно, что клиент-серверная технология приносит много преимуществдля бизнеса, а также расширение возможностей для расширения иконкурирования. К сожалению, все это может быть достигнуто только засчет более высокой стоимости сооружений и более сложной совместимостисистем.Клиент-сервер не единственный способ решения бизнес-проблем, онтакже получил свои ограничения, один из которых, дороговизна.
Но покаклиент-сервер осуществляется мудро, он может принести конкурентныепреимущества. [20]3.4.3-уровневая архитектура.В настоящее время клиент-серверная архитектура имеет гибкуюмодульную архитектуру. Она может быть изменена или дополнена.Различныеподходымогутбытьскомбинированывразличныхкомбинаторных последовательностях, удовлетворяющих практически любыевычислительным потребностям. Поскольку Интернет становится важнымфакторомввычислительныхсредах52клиент-серверныхприложений,работающих через Интернет станет важным нового типа распределенныхвычислений.Интернет расширит охват и мощь клиент-серверной архитектуры. Спомощью общепринятых стандартов, это позволит облегчить и расширитьклиент-серверную архитектуру как внутри, так и между компаниями. Так жеиз-за интернета будут происходить изменения в языках программирования ктехнологии распределенных объектов.Клиент-серверная архитектура по-прежнему остается единственной илучшей архитектурой с точки зрения использования Интернета и другихновых технологий.
Но, независимо от развитий других архитектурныхподходов, клиент-серверная архитектура, вероятно, останется основой длябольшинства вычислительных событий в течение следующего десятилетия.[21]3.5.Прошлое и будущее клиентов.Конечно же, с появлением большого количества людей, соединенныхпосредством компьютерной сети, сразу пошло бурное развитие клиентсерверных приложений. Но сервер в этом случае используется крайнеэкономно – это средство для хранения данных и выполнения несложныхопераций.
Основную вычислительную роль берет на себя именно клиент,присоединенныхкэтойсети.Довольноудачнаяархитектурадаетвозможность использовать максимально ресурсы компьютера, богатыйпользовательский интерфейс, важные данные пользователя хранятся накомпьютере дома, а не сервере неизвестно какой страны.Проблем несколько – заставить человека установить какое-либоприложение можно лишь действительно предоставив ему его как средстворешения проблемы.
А как же быть тому количеству предпринимателей,которые любыми способами хотят привлечь человека своим выгоднымтоваром? Пока что клиент-серверная архитектура не сильно им в этом53помогает. Да и приложения пишутся для определенной платформы и версииоперационной системы, что напрочь лишает взаимодействия пользователейразных операционных систем.Но прогресс не стоит на месте, и в 1989 году была предложенаконцепция всемирной паутины.
А уже через четыре года появляется первыйбраузер Mosaic. Сразу же в мире приложений начинает вырисоваться двакласса приложений – тонкие клиенты, примером которого может служить тотже браузер Mosaic и толстые клиенты, которые по прежнему берут на себязначительную часть обработки информации и используют сервер дляхранения и взаимодействия.Клиентские приложения не собирается сдавать позиций, потому чтовсе, что может сейчас браузер - это отображать информацию.
Динамикаотсутствует. Одно лишь значительное преимущество – сайты становятсявизитной картой, имеющие свой оригинальный дизайн, расположение меню,цветовую гамму. Для клиентских приложений это не было распространено –все создавалось на основе стандартных вариантов, стандартное месторасположения меню, стандартные цвета и шрифты. С одной стороныпростота и функциональность, с другой стороны – красота и изящество.Конечно же, красота и изящество не могла не найти своих сторонников.Такжепользователиразныхоперационныхсистеммоглиспокойнопросматривать сайты.
Возможны некоторые несоответствия в отображенииинформации, но все же лучше чем ничего.С появлением JavaScript в 1996 году html-страницы получаютнебывалую динамику и немного начинают походить на обычные клиентскиеприложения. Конечно же, до полноценных клиентских приложений им,скорее всего, не дойти никогда, но страницы оживают.
Живые страницыделают переворот в интернете, и идет бурное совершенствование скриптовойтехнологии, что приводит к рождению в 2005 году AJAX, а именно идеиасинхронного обращения к серверу для получения лишь необходимой частистраницы, а не всей страницы. Инновационные решения, основанные на54AJAX, типа карт Windows Live Local, приблизили веб-приложения к уровнюудобства обычных клиентских программ.Вот тут веб-страницу можно было уже спутать с обычным клиентскимприложением.
Но выглядеть как в клиентском приложении, и работать какклиентское приложение – это разные вещи. Все же доступ к ресурсамограничен, соединение между клиентом и сервером одноразовое – ужепросмотренные страницы при следующем обращении необходимо загружатьопять. Но это проблемы, которые могут быть решены с появлением новогоhttp-протокола.В свое время, толстые клиенты, работающие на компьютерепользователя, при грандиозном развитии веб-технологий становятся впрямом смысле толстыми – они сложны для клиента при обновлении версии,они прихотливы к семействам операционных систем, плохо взаимодействуютс веб-серверами, потому что зачастую построены с использованием клиентсерверной структуры. Здесь надо было срочно искать способы исправитьситуацию.Корпорация Microsoft не задержалась с предложением и выпустила нарынок программную технологию Microsoft .NET Framework, призваннуюобъединить множество различных служб, написанных на разных языках, дляобщей совместимости.
Эта виртуальная машина может быть установлена наразных семействах Windows, а также на других операционных системах, чтопозволяет использовать любой из языков NET-семейства для написанияработоспособных приложений для всех операционных систем, на которыхустановлен framework. Одна из проблем, которая так долго преследовалаклиентские приложения, частично была решена.Итак, гонка клиентских и веб-приложений находится на той стадии,когда веб просто физически не может проникнуть глубже в ресурсыпользователя, чтобы увеличить быстродействие. Возможности в реализацииотдельных техник все же еще не доступны по сравнению с клиентскими55приложениями и есть проблема постоянного обращения к серверу, потомучто все еще мы работаем с обычным html-кодом.Клиентские же приложение со своим богатством и простотойреализации сложнейших техник веба слишком неохотно потребляютсяпользователями, привыкшими к этому времени с помощью браузера решатьсамые сложные свои задачи.