Технология "Клиент-сервер"

Автор работы: Пользователь скрыл имя, 19 Сентября 2011 в 18:56, курс лекций

Описание работы

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

Файлы: 1 файл

Технология (ПОКС).doc

— 645.50 Кб (Скачать файл)

       3.6 Технология "Клиент-сервер" применительно к Internet  

       С появлением глобальных сетей многоуровневая архитектура «Клиент – сервер»  нашла свое применение в Internet. Другими словами, архитектура Internet не что иное, как архитектура «Клиент – сервер»: пользователь всегда работает с программой - клиентом (Internet Explorer или Netscape Navigator), которая обращается к web-серверам, обслуживающим одновременно десятки и сотни запросов от клиентов по всему миру.

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

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

       Помимо  клиентов-браузеров бывают и другие клиенты, например, клиенты электронной почты (Outlook Express, Netscape Messenger, The Bat, Pegasus Mail, Pine, Eudora и другие.), клиенты для приема и передачи файлов (ftp-клиенты), telnet-клиенты, которые необходимы для интерактивной работы на удаленном узле (простейший telnet-клиент - программа telnet.exe) и многие другие.

       Программы-серверы также разнообразны: web – сервер, DNS – сервер, ftp-сервер (для передачи файлов), сервер приложений (для удаленной работы с приложениями), сервер электронной почты и другие.

       Технология  «Клиент – сервер» для Internet организована следующим образом (рисунок 55):

       - клиент формирует  и посылает запрос  на сервер;

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

       - сервер производит  необходимые манипуляции  с данными, формирует  результат и передаёт  его клиенту; 

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

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

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

       Логически web-документ представляет собой гипертекстовый документ, объединяющий ссылками различные web-страницы. Web-страница может быть связана с компьютерными программами и содержать ссылки на другие объекты. В web-страница помимо текста может содержать мультимедийный объект (рисунок, звук, видео), программу, которая при переходе на нее по ссылке, будет передана с сервера на рабочую станцию для интерпретации или запуска на выполнение навигатором или любой другой сервис – электронную почту, копирование файлов с другого компьютера сети, поиск информации и так далее.

       Цикл повторяется, пока пользователь не закончит работу с сервером.

       Риунок 55 - Технология «Клиент – сервер» для Internet

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

       - браузер преобразует доменное имя из URL в IP-адрес и устанавливает соединение с сервером;

       - браузер передает остальную часть  URL на сервер;

       - сервер определяет по URL путь и  имя файла, при необходимости формирует его динамически;

       - сервер пересылает файл браузеру;

       - сервер разрывает соединение;

       - браузер отображает документ.

       Существует  множество технологий и языков программирования для написания серверных и  клиентских Internet – приложений. В настоящее время большое распространение получила технология Java, с помощью которой можно строить универсальные системы со смешанной архитектурой, приложения, выполняемые на стороне клиента, называются апплетами (applets), на стороне сервера - сервлетами (servlets). Достаточно большой популярностью пользуется Flash-технология, в рамках которой можно создавать медиа-насыщенные интерактивные ресурсы, основная рабочая нагрузка при этом ложится на компьютер пользователя.

       

       Рисунок 56. - Схема работы по HTTP в архитектуре  «Клиент-сервер» для Internet

       С помощью CGI (Common Gateway Interface) приложений возможно взаимодействие с любыми базами данных через формирование SQL запросов, или другие механизмы; также возможна реализация счетчиков посещений, гостевых книг и других расширений. CGI реализуется через скрипты на любом из языков программирования высокого уровня (наиболее часто используют С++, Perl, VisualBasic, Pascal, Java).

       Server Sides Includes (SSI/SSI+) - технология динамического формирования документов (в том числе и работы с БД). Скрипт (точнее серверные инструкции) находится в HTML файле обычно имеющем расширение sht или shtm, при этом серверные инструкции размещаются между специальными разделителями (tokens), а сами инструкции записаны на языке Сscript, хотя это в большей степени зависит собственно от сервера. При пересылке такой файл сканируется сервером на наличие SSI инструкций и результат динамически подставляется в посылаемый документ. SSI реализуется через специальные компоненты (динамические библиотеки), которые входят в состав сервера. По аналогичному принципу организована работа со скриптами на языке PHP, в этом случае, программные конструкции включаются в HTML с помощью разделителей <? php и ?>.

       Схожей  по технике формирования динамических страниц является технология Active Server Pages (ASP) от Microsoft. Данная технология опирается на использование разнообразных объектов и компонент (COM, ActiveX и тому подобное), работа с которыми ведётся средствами языков VBScript или JavaScript.

       Internet Server Application Programming Interface (ISAPI), реализуется через механизм DLL. C помощью ISAPI Internet connector возможно взаимодействие с базами данных (SQL Server, Oracle, RBase, Access, Paradox, dBASE) через драйверы Open Database Connectivity (ODBC), также возможна реализация других расширенных функций (создание различных фильтров запросов). Основным средством разработки приложений является Microsoft Visual C++ (The Internet Server API Extension Wizard). Данный механизм поддерживается Microsoft Internet Information Server (MS IIS).

       Также нашли свое применение JavaScript, VBScript, SGML, HTML, XML и другие языки, ориентированные на описание структур документов. 

       3.7 Технология «Клиент-сервер» применительно к Intranet  

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

       Intranet - частная компьютерная сеть, являющаяся внутренней web-системой, локализованной в пределах одной организации, в которой используются стандарты и протоколы Internet (сервисы Web, TCP/IP, http, протоколы связи и HTML – страницы). Другими словами, Intranet – это частная, защищенная внутрикорпоративная сеть, при построении которой используются технологии Internet, доступная только сотрудникам организации, причем независимо от их физического местонахождения, ведь для доступа в Intranet сети используется Internet как транспорт

       Термин  «Intranet» впервые появился 19 апреля 1995 году в журнале Digital News & Review.

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

       Архитектура Intranet основана на архитектуре «Клиент-сервер» (рисунок 57).

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

       - идентифицировать любого входящего  извне пользователя, чтобы запретить  или разрешить ему доступ;

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

       - криптографию - шифрование секретной информации.

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

       Рисунок 56 – Простейшая схема Intranet с архитектурой «Клиент – сервер»

       Наличие диалоговых свойств в HTML и интерфейса CGI позволяет строить Internet-приложения с доступом к БД. Наиболее распространена схема динамической публикации отчетов. При этом в качестве CGI-процедуры используется параметризуемый генератор отчетов. Однако это не единственная схема, возможно применять программы ввода и обновления информации в БД.

       Если  используются традиционные статичные  страницы гипертекста, то в ответ  на запрос клиента Web-сервер передает страницу в формате HTML. При работе с базой  данных клиент указывает в форме  программу или сценарий для запуска  на сервере. Серверная процедура получает введенные пользователем данные, формирует и передает SQL-запрос (определяющий логику управления данными) и, возможно, данные к СУБД. Сервер БД по запросу выполняет обновление, вставку, удаление или выборку записей из БД. CGI-процедура преобразует полученные результаты в формат HTML или в формат диалоговых переменных. Затем Web-сервер посылает полученную HTML-cтраницу или значения диалоговых переменных браузеру для отображения.

       Использование CGI-процедур имеет ряд недостатков  – статичное представление информации, преобразование результата-отчета в HTML-файл, отсутствие динамического просмотра изменения информации в базе данных, процедура «не помнит состояний запросов» – каждое обращение к БД требует повторного установления соединения. Кроме того, такой принцип работы перегружает коммуникационную среду и имеет системные издержки при запуске серверных процессов.

       Для устранения недостатков CGI используют возможности специальных API для Web-серверов и включают дополнительное «релейное» звено в архитектуру. Все это только подталкивает к дальнейшему совершенствования архитектуры «Клиент-сервер».

       Intranet имеет пять основных функций:

       - электронная почта;

       - совместное использование файлов;

       - каталогизация;

       - кросс-платформенная совместимость; 

       - поиск и управление сетью.

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

       Основные  достоинства Intranet:

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

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

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

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

       -гибкость

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

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

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

Информация о работе Технология "Клиент-сервер"