Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Клиент - Сервер

Содержание:

Введение 

Как правило компьютеры не являются равноправными. Некоторые из них владеют ресурсами,другие предоставляют доступ к этим самым ресурсам. Клиент и сервер (компьютер с данными к которому обращается пользователь) находятся в рамках одной вычислительной системы. В самом простом смысле эта система позволяет разделять обязанность информационной системы между компьютерами.Связь между ними осуществляется между ними посредством протокола данных. Задача системы «клиент - сервер» сводиться к обеспечению сетевого взаимодействия между компонентами информационной системы. В данной работе я попытаюсь в охарактеризовать важность технологии «клиент - сервер». Разобрать её ключевые моменты,методы, технологии и наиболее актуальные (применяемые ) на данный момент способы реализации. В качестве методичного материала использую такие книги как : Информатика и математика. Учебник и практикум для прикладного бакалавриата (Зайцев.М.А. Нагаева Е.И.) и - Сети и системы передачи информации (автор Костров Б.В.) Книги помимо темы «клиент - сервер» затрагивают поверхностно математическую статистику, дискретную математику и логику. Мой выбор пал именно на эти книги за счёт лёгкости восприятия текста и за множество поясняющих примеров.Попытаюсь разобрать технологии и мотивы по созданию тех или иных методов

1. Проектирование архитектуры «клиент - сервер» 

1.1.Что такое «клиент - сервер»

На сегодняшний день система «клиент-сервер» получает все большее распространение. Хотя по своей сути и структуре не предлагает ничего нового. Она лишь предоставляет примерное понятие о том как должно быть устроена современная информационная система.Заняв нишу базы данных, система «клиент-сервер» является одной из основных технологий глобальной сети internet. Со временем заменив узконаправленную модель файлового сервера для локальных сетей (FS) заменили (RDA,DBS,AS).В последующем, в ходе перенесения идей из сети internet в среду корпоративных систем, появилась технология intranet. Разительное отличие технологии от «клиент-сервера» эта технология ориентированна не на данные, а на информацию в её завершённом к потреблению виде. Системы системы построенные на основе intranet, имеют в своём составе централизованные серверы информации и распределительные элементы предоставления этой самой информации конечному пользователю. Взаимодействия между клиентом и сервером в intranet происходит при помощи web - технологии. Следует также отметить также что реализация данной технологии может разительно отличаться от случая применения. Подобное зависит от конкретного программного обеспечения и ресурсных технологий.В большинстве своих случаев доступ к компьютерным ресурсам неравноправен. Одним имеют доступ к этим ресурсам, другие имеют право обращаться к ним.

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

1.2. Модули данных

Модули интерфейса с пользователем. Альтернативное название - логика представлений. Посредством этого инструмента пользователи контактируют с приложением. Вне зависимости от логики построения модулей её главная задача состоит в упрощении и максимальной эффективности обмена информации между информационной системой и пользователями.

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

Модули обработки данных.

Логика доступа к данным или функции управления ресурсами. Эти алгоритмы которые исторически рассматриваются как специфический интерфейс к механизму постоянного хранения данных наподобие файловой системы или СУБД. Также организуется определённый интерфейс для доступа СУБД при помощи этих самых алгоритмов. Созданные таким образом интерфейсы помогают взаимодействовать с запросами и соединениями с базой данных.( Перевод запросов на язык SQL, получение результатов и перевод этих самых данных обратно для определённого характерного результата.

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

В соответствии с разделением выделяют необходимые следующие компоненты ;

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

- Прикладной компонент

- Компонент предоставления ресурсами

Глава 2. Архитектура данных и их градация. Продукты промежуточного слоя. Модель файлового сервиса.

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

В обоих случаях имеются свои недостатки. В первом случае перегружается сеть, поскольку передаются необработанные, а значит избыточные данные. Усложняться обработка и поддержка имеющейся системы, поскольку замена алгоритма вычислений и исправления ошибки требует замены всех интерфейсных программ.Соответственно это значить что могут быть несогласованность данных и системные ошибки. Если же обработка происходит на сервере, возникает проблематичность описания встроенных процедур и их отладки. К тому же систему с обработкой информации практически невозможно перенести на другую (ОС). Что является существенным недостатком.

Архитектура «тонкий клиент»

- Усложняться реализация, язык SQL не разработан для подобного ПО и нет хороших средств отладки.

- Производительность программ разработанных на языке SQL значительно ниже чем на других языках.

- Программы написанные на СУБД языках недостаточно надёжные, ошибка в них может привести к выходу из строя всего сервера.

- Получившиеся таким образом программы полностью переносимы на другие платформы.

- Архитектура «толстый клиент»

- Усложняется обновления ПО, поскольку замену приходиться проводить по всей системе.

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

- Перегружается сеть поскольку по ней передаются необработанные данные

- Слабая защита поскольку сложно распределить полномочия.

Для решения перечисленных проблем используются многоуровневые (три и более уровней) архитектуры «клиент-сервер»

- Трёхуровневая модель

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

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

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

Продукты промежуточного слоя

Существует несколько категорий продуктов промежуточного слоя ;

- Message orientated яркие представители MQ series и JMS

- Object broker яркие представители CORBA и DCOM

- Component based яркие представители NET и EJB

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

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

- - CORBA Agent – может предоставлять распределенную директорию для хранения CORBA объектов;

- Transaction Service – уже из названия понятно, что это сервис транзакций;

- JDBC – драйвера для подключения к базам данных, ведь именно серверу приложений придется общаться с базами данных и ему нужно уметь подключаться к используемой в вашей компании базе;

- Java Mail – данный сервис может предоставлять сервис к SMTP;

- JMS (Java Messaging Service) – обработка синхронных и асинхронных сообщений;

- RMI (Remote Method Invocation) - вызов удаленных процедур.

Многоуровневые системы достаточно легко перевести на web - технологию, для этого достаточно заменить клиентскую часть специальным или универсальным браузером, а сервер приложений достаточно дополнить web сервисом и небольшими программа вызова процедур сервиса. В заключении можно сказать что двухуровневая система сильно уступает многоуровневым системам и в большинстве случаев используется многоуровневая система «клиент-сервер» в которой различают три модификации RDA,BDS, и AS.

Модель файлового сервиса (FS)

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

- Простота разработки приложения

- Удобство администрирования и обновления ПО ( за счёт компактности размещения компонентов на одном компьютере)

- Низкая себестоимость оборудования рабочих мест ( терминалы или дешёвые пк, всегда выгоднее полноценных пк)

Словом достоинство FS перекрывают её недостатки. Но она их не лишена.

- Большая нагрузка сети

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

- Дорогостоящее аппаратное обеспечения, поскольку пользователи разделяют его ресурсы.

- Отсутствие графического интерфейса.

Благодаря решению проблем, которые были присущих технологии (FS), получилась более прогрессивная технология, получившая названия «клиент-сервер»

Для современных СУБД архитектура «клиент-сервер» стала стандартом. Если подразумевается что будет использована подобная архитектура, это означает что часть ресурсов будет распределена на сервере ( программа - сервер ) а другая часть у компьютере клиента. (программа - клиент)

Различие в реализации приложения в рамках технологии «клиент-сервер», определяется четырьмя факторами :

- Какие виды программного обеспечения в логических компонентах

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

- Какие логические компоненты распределяются компьютерами в сети.

- Какие механизмы используются для связи компонентов между собой.

В связи с эти, выделяют три подхода, каждый из которых реализован в связи с технологией «клиент-сервер» Рассмотрим каждую отдельно :

- модель доступа к удаленным данным (Remote Date Access - RDA);

Основным преимуществом RDA являться широкий набор инструментальных средств разработки приложений,обеспечивающий быстрое создание desktop-ых приложений, работающих с SQL ориентированными СУБД. Обычно инструментальные средства поддерживают графический интерфейс пользователя с OS, а также средств автоматической генерации кода, в котрой смешаны прикладные функции и функции представления.

Из минусов :

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

Администрирование на удовлетворительном уровне приложений RDA практически невозможно.Если различные по своей природе функции ( функции представления и прикладные функции ) смешанны в одной и той же программе. При необходимости приходиться в таком случае переписывать всю программу целиком.

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

- модель сервера базы данных (DateBase Server - DBS);

Сетевая архитектура технологии «клиент-сервер» основу,которых составляет механизм хранимых процедур, реализующий прикладные функции.

В DBS моделях приложение является распределенным. Компонент представления выполняться на компьютере клиента,в то время как прикладной компонент (реализующий бизнес -функции) оформлен как набор хранимых процедур и функционирует на компьютере сервере БД. Хранимые процедуры также можно назвать процедурами баз данных.

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

Из минусов :

Разнообразные процедурные расширения по типу SQL используемые для написания хранимых процедур, не являются языками программирования в полом смысле этого слова.Они встроенные в конкретные СУБД и имеют известные ограничения.В большинстве СУБД отсутствует возможность отладки и тестирование хранимых процедур,что может привести к полной неработоспособности всей системы в целом.

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

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

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

- модель сервера приложений (Application Server - AS):

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

Данные спрятаны за сервером приложений, в котором обычно встроена проверка полномочий клиента.В СУБД обеспечивается высокий уровень защиты данных.Из прикладных компонентов доступны такие ресурсы как почтовые ресурсы,базы данных и д.р. Серверы приложений обычно выполняются на том же компьютере что менеджер ресурсов. Что избавляет от обработки запросов на SQL языке.Серверы могут находиться на других компьютерах.

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

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

Изучив все модели технологии « клиент-сервер» делаем вывод : RDA и DBS имеют двоичную систему распределения функций.В RDA модели функции реализации отданы клиенту. В DBS модели функции распределяется посредством ядра СУБД.В RDA модели прикладной компонент сливается с компонентом представления. DBS интегрируется в компонент доступа к ресурсам.

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

Разберём что же такое означает термин «клиент-сервер» Это в первую очередь система распределённых вычислений.В данном случает это рассматривается как архитектура с участием нескольких серверов. Термин «сервер» означает просто программу отвечающею на запросы и выполняющие необходимые действия по запросу клиента.Кроме того интеграция дискретных сетевых компонентов и обеспечения их функционирования как единого целого способствует увеличению эффективности и снижению издержек.Чтобы добиться баланса между клиентом и сервером, компонент приложения должен выполняться на сервере когда централизованная обработка действительно эффективна.

В итоге если предстоит работа с небольшими информационными системами,не требующего графического интерфейса с пользователем, можно выбрать FS модель. Проблема графического интерфейса легко решает RDA модель.DBS модель является хорошим вариантом для СУБД. AS модель является хорошим вариантом, если предстоит разрабатывать большие информационные систем, а также при низкоскоростных каналах связи.При разработке возможно использовать как смешанный тип моделей так и чистовые варианты любой из вышеперечисленных.

Это зависит от платформы,модели на которой данный проект будет реализован. Так как ошибки допущенные на этом этапе могут свести на нет все преимущества прикладной части информационной системы.Причём большая часть недостатков будет выявлена на этапе эксплуатации.

Глава 3.Организация обработки данных.

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

Организация обработки данных в СУБД с архитектурой «клиент-сервер»

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

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

Поэтому любая СУБД не может повсеместно использоваться де угодно.

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

Этот язык представляет собой текущий стандарт интерфейса СУБД в открытых системах. Очевидное преимущество - стандартность интерфейса.

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

3.1. Транзакции

Разберём основополагающий механизм организации обработки данных - транзакции

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

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

О важности механизма поддержки транзакции можно судить на примере перечисления денег между счетами. Данная транзакция состоит из множества операции от перечисления денег до получения другим клиентом. А если произойдёт какой то сбой деньги просто не дойдут до получателя, и останутся у отправителя. Транзакция - это к тому же инструмент координации последовательных изменений ресурса. Чаще всего такая транзакция обеспечивается за счёт координации ресурса - менеджера транзакции.

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

- Коммуникационный менеджер, контролирующий обмен сообщениями между компонентами информационной системы.

- Менеджер авторизации, обеспечивающий аутентификацию пользователей и проверку их прав доступа

- Менеджер транзакции, управляющий распределёнными операциями.

- Менеджер ведения журнальных записей,контролирующей восстановления и откат транзакции.

- Менеджер блокировок, обеспечивающий правильный доступ к совместно использованным данным.

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

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

- Гибкость доступа к данным

Использование мониторов транзакции практически не накладывает каких либо ограничений на многообразия или сложность запросов доступа к СУБД.

- Производительность

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

3.2.Закрытая сеть - intranet

Intranet и технология «клиент-сервер»

Пользователь всегда работает с программой клиентом, которая обращается к web серверам, обслуживающим десятки тысяч запросов от клиентов по всему миру.

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

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

Это частная компьютерная сеть, являющаяся внутренней web системой, локализованной в пределах одной организации, в которой используются стандарты и протоколы. Иначе говоря это частная, защищённая внутрикорпоративная сеть, доступна только сотрудникам организации. Доступ к сети не зависит от их физического местонахождения, ведь для доступа в intranet. используется internet как транспорт. В качестве клиентских программ используются браузеры. При изменениях функциональности корпоративной информационной системы обновление клиентского ПО не требуется.Web сервер выступает в качестве сервера приложений. Клиент и сервер взаимодействуют по локальной сети.Для протоколирования доступа в сеть, устанавливается специальное ПО (firewall) для идентификации действий. Firewall позволяет делать следующее ;

- Идентифицировать любого входящего извне пользователя

- Аудио и протоколирование вхождений - запись,кто когда и зачем входил во внутреннюю сеть.

- Криптографию, шифрование полезной информации.

Экранирование - возможность односторонней передачи данных.

В краткий перечень достоинств intranet входит :

- Универсальность

Это поддержка различного документооборота в компании,даже если сотрудники находятся в различных точках.

- Прозрачная интеграция

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

- Гибкость.

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

- Ценовая эффективность

Существенно снижается цена разработки и сопровождения программного обеспечения клиентской части.

- Безопасность

Используются гибкие и мощные механизмы защиты.Можно построить такую сеть по степени защищенности,которая необходима.

- Высокая производительность

Для достижения такого уровня производительности в сети используется один из основополагающих принципов - наращиваемость

Недостатки intranet :

- Лёгкий доступ к корпоративным данным может спровоцировать их утечку к конкурентам через недобросовестного работника.

- Работоспособность и гибкость intranet требует значительных накладных расходов на разработку и администрирование.

- Как и любая сеть может быть взломана с корыстными целями.

Заключение 

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

Библиография :

- Сети и системы передачи информации (автор Костров Б.В.) 2 издание 285 страниц

- Информатика и математика. Учебник и практикум для прикладного бакалавриата (Зайцев.М.А. Нагаева Е.И.)485 страниц