на тему рефераты
 
Главная | Карта сайта
на тему рефераты
РАЗДЕЛЫ

на тему рефераты
ПАРТНЕРЫ

на тему рефераты
АЛФАВИТ
... А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я

на тему рефераты
ПОИСК
Введите фамилию автора:


Реферат: Организация доступа к базам данных в Интернет


Кроме того, на рынке присутствует немалое количество мощнейших инструментов для разработчиков приложений на Java. Например, тот же VisualAge for Java 2.0 содержит средства визуального создания сервлетов - по сути, этакий WYSIWYG-pедактоp веб-страниц, создающий вместо HTML-документов сеpвлеты, генеpиpующие эти документы на лету.

Работа с базами данных. Работа с реляционными СУБД из Java унифицирована (для этого существует специальный пакет java.sql), удобна и отвязана от специфичных для конкретной СУБД тонкостей. Всё, что Вам нужно - это найти для своей СУБД JDBC-дpайвеpы (а они сейчас существуют практически для всех совpеменных баз данных, зачастую даже по нескольку pазновидностей), и далее можно пользоваться совеpшенно стандаpтными механизмами.

А при переходе на другую СУБД, например, c MySQL на Oracle, достаточно будет просто добавить в CLASSPATH новый драйвер и поменять URL для подключения к другой базе. Ни одного изменения в коде

Перспективность, современность технологий.

Конечно, есть у этой технологии и недостатки. Как технические: например, высокие требования к системным ресурсам - в основном, к памяти (под OS/2, например, запущенная Java-машина занимает 15-20 мегабайт оперативной памяти) или необходимсть в качественной устойчивой реализации Java для выбранной платформы, так и иного плана: такие как отсутствие должной квалификации как у разработчиков, так и, зачастую, у тех, кто принимает решения, их устоявшиеся предубеждения и многое другое...

Технология pаботы сеpвлет-сеpвеpа.

Итак, как же работают сервлеты. Рассмотрим это на примере модуля JServ к веб-серверу apache.

В момент старта сервера вместе с ним стартует и ява-машина с так называемым servlet-wrapper'ом или средой, в которой в дальнейшем и предстоит исполняться сервлетам. Строго говоря, JServ - это и есть та самая среда. Он целиком написан на Java и занимается непосредственно загрузкой и исполнением сервлетов, следуя спецификации Sun, а также обменом данными с собственно веб-сервером. В последнем для этого должен присутствовать специальный модуль mod_jserv (его необходимо добавить при компиляции и сборке apache, или подключить в виде внешнего модуля).

При получении запроса на документ, приходящийся на специально оговоренный URL или каталог (обычно это что-нибудь вроде /servlets/), apache с помощью модуля mod_jserv передает этот запрос JServ'у, который определяет, какой сервлет должен этот запрос обработать, загружает этот сервлет (если он ещё не был загружен) и затем возвращает веб-серверу тот текст или поток данных, который был сформирован в результате работы сервлета.

Изначально сервер "пуст" - при его старте сервлеты обычно не загружаются (хотя есть возможность принудительно инициализировать нужные сервлеты при старте сервера). При появлении запроса нужный сервлет ищется в списке уже загруженных и, при необходимости, стартуется и инициализируется. После этого он остается постоянно загруженным в Java-машине (и предкомпилированным, если Java-машина содержит JIT) и при последующих запросах просто вызывается соответствующий его метод для их обработки. Преимущества такой идеологии очевидны. Функционально это аналогично вызову простой подпрограммы внутри обычного сервера и проиходит очень быстро и эффективно. Кроме того, заметный выигрыш дают такие вещи, как единожды проведенная инициализация, возможность хранения глобальных данных или поддержка множественных клиентских сессий, ведущаяся самим сеpвеpом (а не сеpвлетами, pазpаботчики котоpых в значительной степени избавлены от изобpетания велосипедов). Например, можно установить одно единственное соединение с базой данных, и пользоваться им при обработке запросов - немалая экономия, учитывая то, что из тех же скриптов на perl или php приходится каждый раз создавать новое соединение, восстанавливать параметры сессии и т.п.

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

1.2.7. Пакет Web - Oracle - Web

Пакет WOW является свободно-распространяемым программным средством, предназначенным для создания интерактивных WWW-интерфейсов с СУБД Oracle. Пакет WOW был первым и наиболее простым средством, выпущенным фирмой Oracle. В настоящее время существует набор продуктов, развивающих функциональность WOW'а - Oracle Web Server версий 1, 2, Oracle Web Arcitecture.

Все перечисленные продукты позволяют использовать процедурное расширение языка SQL - PL/SQL, разработанное фирмой Oracle для динамического создания гипертекстовых документов. Высокая скорость разработки достигается за счет резкого упрощения доступа к БД - программы на PL/SQL исполняются самим сервером Oracle. Предлагаемый пакет WOW был переработан в Новосибирском областном центре НИТ с целью поддержки нескольких русскоязычных кодировок.

Основной областью использования WOW является обработка запросов от WWW-сервера к SQL-серверу Oracle в среде Unix. В предложенных сценариях пакет WOW позволит организовать эффективный WWW доступ к информационному хранилищу, построенному на базе сервера баз данных Oracle (сценарий 3).

1.2.8. Пакет Cold Fusion фирмы Allaire Corp

Пакет предназначен для использования под ОС Windows и позволяет обращаться к различным базам данных, поддерживающим интерфейс ODBC через WWW-интерфейсы. Пакет имеет коммерческий статус, его "evaluation copy" является свободно-распространяемой. Для доступа к базам данных используются конструкции языка DBML - расширения языка HTML, дополненного средствами доступа к БД через ODBC. Документы на языке DBML обрабатываются на серверной части, в результате чего создается HTML-документ. Полноценная версия пакета, вместе с WWW - сервером стоит $486.

Пакет может эффективно использоваться в качестве обработчика запросов WWW к исходным базам данных или информационному хранилищу (сценарии 2,3)

1.3. Оценка трудоемкости обеспечения WWW доступа

Трудоемкость обеспечения WWW-доступа к базам данных, очевидно, складывается из трудоемкости работ при реализации одного из вышеприведенных сценариев. Реализация первого сценария связана с последовательным преобразованием всех данных, находящихся в исходной БД. Разработка средств вывода содержимого таблицы в формате HTML с необходимым форматированием и текстовым сопровождением будет занимать порядка 1-3-х дней для одного разработчика. Разработка средств построения индексной структуры к выводимым данным является более творческой работой и может занять 1-3 недели для одного разработчика.

Трудоемкость построения интерфейсов для сценариев 2, 3, в общем случае, эквивалентна трудоемкости построения этих интерфейсов при создании исходной информационной системы (т.е. той, для которой обеспечивается WWW-доступ) с использованием традиционных средств разработки (не-CASE). В третьем сценарии дополнительные трудозатраты пойдут на перегрузку данных в иформационное хранилище. При перегрузке данных без изменения структуры и имен можно исходить из оценки трудозатрат: 1-2 таблицы в 1-2 дня для одного разработчика, в зависимости от сложности и объема таблиц, при условии отладки технологии перегрузки.

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


2. Практическая часть


Широкие возможности WWW - технологии по представлению пользователям Internet информации, включая текст, картинки, графики, видео и звуковые дорожки, обусловили процесс бурного роста сети WWW - серверов и Internet в целом. Целью данной дипломной работы является освещение технологии организации доступа к БД в формате RUS-MARC, посредствам выбранного инстрементария в данном случае это язык Java .

2.1 ОБЩАЯ ЧАСТЬ

2.1.1. Назначение WWW - сервера. Общая схема работы. Определение

WWW сервер - это такая часть глобальной или внутрикорпоративной сети, которая дает возможность пользователям сети получать доступ к гипертекстовым документам, расположенным на данном сервере. Для взаимодействия с WWW сервером пользователь сети должен использовать специализированное программное обеспечение - браузер (от англ. browser), другое название - программа просмотра.

Схема работы

Рассмотрим более подробно, чем в предыдущих главах, схему работы WWW-сервера. В общем виде она выглядит так:

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

o        Установление связи с сервером

o        Получение требуемого документа

o        Отображение полученного документа

o        Реагирование на действия пользователя - доступ к новому документу

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

2.      WWW сервер ищет запрашиваемый документ и возвращает результаты браузеру

3.      Браузер, получив документ, отображает его пользователю и ожидает его реакции.

o        Возможные варианты:

o        Ввод адреса нового документа

o        Печать, поиск, другие операции над текущим документом

o        Активизация (нажатие) специальных зон полученного документа, называемых связями (link) и ассоциироваными с адресом нового документа.

o        В первом и третьем случае происходит обращение за новым документом.


Адрес

Адрес документа указывается в виде специальной строки, называемой URL. Для протокола HTTP, используемого при взаимодействии WWW клиента и WWW сервера, URL состоит из следующих компонент:

1)      Наименование протокола, по которому работает сервер (http).

2)      Имя машины - сервера в Internet или ее IP - номер.

3)      Порт TCP, обращение к которому обрабатывает сервер.

4)      Место (путь) документа на машине - сервере.

Например:  

http://www.cnit.nsu.ru:80/welcome.html

Здесь http означает протокол работы с WWW - сервером

o        ':' - разделитель

o        "www.cnit.nsu.ru" - имя машины - сервера в Internet

o        "80" - номер tcp - порта

o        /welcome.html - путь до документа на машине - сервере

Из общей схемы работы видно, что функции WWW сервера заключаются в следующем:

1)      Установление соединения с клиентским ПО по протоколу tcp.

2)      Принятие запроса на документ по протоколу http.

3)      Поиск документа в локальных ресурсах.

4)      Возврат результатов поиска по протоколу http.

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

Среда работы сервера

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

 

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

Наиболее распространенных платформ для WWW – сервера. Таблица 1

Компьютер

Операционная Система

IBM PC

o      Unix (UnixWare, Open Server, Solaris, BSD, Linux и т.д.)

o      Microsoft Windows NT/2000

o      IBM OS/2

o      Novell NetWare

Sun SparcStation и SparcServer

o      SunOS

o      Solaris

Silicon Graphics серверы и рабочие станции o      IRIS

2.1.2 Непосредственные функции сервера. Базовые определения

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

Например:  

D:\WWW\INDEX.HTM - в Windows,

/u/data/www/html/index.html - в Unix - системах,

USR:WWW/HTML - в NetWare и т.д.

Путь файла, указываемый в URL, имеет стандартный вид:

/<имя_каталога>/ ... /<имя_каталога>/<имя_файла>

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

Исходный каталог документов

Это каталог реальной файловой системы сервера, от которого идет вычисление пути, указанного в URL. Например, если исходным каталогом документов является D:\WWW\, то на запрос к этому серверу документа по URL

http://<имя_сервера>/index.htm

будет возвращен файл

D:\WWW\index.htm

Синонимы

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

Например:

Синонимом для /Harvest объявляется /projects/www/harvest или

синонимом для /test/myfile.html объявляется C:\MYDIR\FILE.HTM

В первом случае все обращения к файлам каталога /Harvest будут обрабатываться в каталоге /projects/www/harvest. Второй пример показывает работу синонима с конкретным файлом файловой системы.

Индексный файл

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

Пользовательский раздел

Для многопользовательских операционных систем (таких как Unix) ПО WWW - сервера позволяет каждому пользователю предоставлять доступ к своему собственному набору гипертекстовых документов вне основной иерархии (Исходного каталога документов, Синонимов и т.д.). Этот набор документов должен находиться в собственном (т.н. "домашнем") каталоге пользователя. Для доступа к таким документам в URL перед путем ставится знак тильда и имя пользователя: ~<имя_пользователя>.

Например:

На сервере Indy.cnit.nsu.ru создан пользователь с именем fancy и "домашним" каталогом /home/fancy. Собственные гипертекстовые документы он хранит в каталоге /home/fancy/public_html. При обращении по URL http://Indy.cnit.nsu.ru/~fancy/start.html, WWW - сервер будет искать документ start.html в каталоге /home/fancy/public_html.

2.1.3 Протокол MIME

Протокол MIME - многоцелевое расширение электронной почты, был создан как способ передачи нетекстовой информации: изображений, звука, видео в письмах электронной почты. Механизм оказался удачным, и его перенесли и в on-line сервисы, в том числе WWW. Здесь MIME используется для передачи документов от сервера к клиенту.

В общем виде MIME основывается на передаче вместе с основными данными дополнительной информации, описывающей что это и в каком виде передается. Эта дополнительная информация называется заголовок MIME. Базовой частью заголовка является строка, описывающая тип передаваемого сообщения. Формат строки:

Content-Type: <тип_MIME>

Перечень типов MIME (т.е. видов передаваемых данных) постоянно пополняется и может быть дополнен даже пользователем для описания своего собственного вида данных. Формат типа MIME:

<Тип> / <Подтип> [ ; <параметры> ]

Где <Тип> - определяет общий тип данных:

Audio - для звуковых данных

Application - данные, являющиеся входными для какого-либо приложения (программы)

Image - для графических образов

Message - для сообщения, которое само по себе является MIME - документом

Multipart - для сообщения, состоящего из нескольких MIME - документов

Text - для текстовых данных в различном виде

Video - для видеоданных.

<Подтип> - указывает на специфический формат данных типа <Тип>

Например:

text/html - текстовые данные в формате HTML

image/giff - графические данные в формате gifF

<Параметры> - список параметров, необходимых для интерпретации данных.

Для ведения специфичной обработки файлов различных типов и форматов на клиентской и серверной частях поддерживаются списки соответствий типов MIME и расширений файлов. Формат записи такого списка:

<Тип>/<Подтип> <расширение1> ... <расширениеN>

Эти списки сопоставляют всем файлам, имеющим определенные расширения, определенные типы MIME.

Например:

image/giff gif giff

text/html html htm

В первой строке всем файлам с расширением gif и giff приписывается тип содержимого image/giff. Если для типа содержимого image/giff определены специальные правила обработки (например, отображение на экране в определенной области), то так будут обрабатываться все файлы с расширениями gif и giff.

2.1.4 Протокол HTTP

Протокол HTTP определяет язык запросов от WWW - клиента к WWW - серверу. Сам запрос состоит из следующих компонент:

<Заголовок>

<Метод> <Источник / Данные>

где

Заголовок - определяет версию протокола HTTP и другие служебные параметры;

Метод - одно из ключевых слов:

GET - для передачи запросов на выдачу документов

PUT, POST - для передачи данных от клиента к серверу (например, из форм)

Пример запроса:

HTTP/1.1

GET /index.html

Описывает запрос на получение файла index.html из корневого каталога документов сервера.

2.1.5 Интерфейс CGI

Помимо доступа к статическим документам сервера существует возможность получения документов как результата выполнения прикладной программы. Такая возможность реализуется на сервере WWW благодаря использованию интерфейса CGI (Common Gateway Interface). Спецификация CGI описывает формат и правила обмена данными между ПО WWW сервера и запускаемой программой.

Для инициирования CGI необходимо, чтобы в запрашиваемом URL был указан путь до запускаемой программы. ПО WWW сервера исполняет эту программу, передает ей входные параметры и возвращает результаты ее работы, как результат обработки запроса, клиенту. CGI - программой может являться любая программа локальной операционной системы сервера - в двоичном виде или в виде программы для интерпретатора (Basic, SH, Perl и т.д.).

С целью облегчения администрирования CGI - программ, а также для удовлетворения требованиям безопасности CGI - программы группируются в одном или нескольких явно указанных серверу каталогах. По умолчанию это каталог cgi-bin в иерархии серверных каталогов, однако, его имя и положение могут отличаться.

Например:

клиент, обращающийся к CGI - программе test-query, будет использовать URL http://<имя_сервера>/cgi-bin/test-query

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

2.2. Web-сервера Apache

Apache - самый распространенный Web-сервер в мире. По данным компании Netcraft (15) общее число Web-узлов, работающих под его управлением, к концу 1998 г. достигло 2 млн. (55% общего числа узлов) и постоянно растет. Для сравнения: на долю серверов Microsoft приходится 25%, Netscape  - 7%. Будучи бесплатной открытой программой, предназначенной для бесплатных же Unix-систем  (FreeBCD, Linux и др.), Apache по функциональным возможностям и надежности не уступает коммерческим серверам, а широкие возможности конфигурирования позволяют настроить его для работы практически с любой конкретной системой. Существуют локализации сервера для различных языков, в том числе и для русского.

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

Характеристика

Компания - The Apache Group

Продукт - Apache Web Server 1.3.14

Операционная система - OS/2, Unix, Windows, BeOS

Тип процессора - Alpha, Intel 80486, Pentium, Pentium Pro, PowerPC

Требования к памяти - ОЗУ 32 МБ

Функции регистрации:

формат CERN - нет

формат NCSA - есть

автоматическое архивирование - нет

регистрация производительности - есть

использование браузеров - есть

отчеты об использовании - нет

Защита - SHTTP, SSL

API и средства написания сценариев - Basic, CGI, JavaScript API, Java (если при компиляции были внесены изменения и добавлены модули продукта JServ )

Специальные функции:

 SMP - есть

 конференцсвязь - есть

 передача полномочий другому Web-серверу - есть

 сервер новостей - нет.

Многие Web-мастера и сетевые администраторы настроили серверы Apache под свои нужды благодаря их преимуществу - сравнительно простой архитектуре.

2.2.1 Установка WEB-сервера Apache

Начнем с того, что серверов существует множество - плохие и хорошие, медленные и быстрые... Я же выбрал сервер, подходящий под последние две категории, - Apache. Самое главное то, что это чуть ли не единственный сервер, который позволяет работать в Windows 95/98/NT с технологиями PHP, CGI и Perl-скриптами одновременно так же просто и непринужденно, как будто он стоит на Unix.

Итак, установить на компьютер Apache для Windows 95/98/NT довольно просто при наличии дистрибутива сервера. В противном случае следует запастись терпением и скачать дистрибутив сервера - файл apache_1_3_14_win32_r2.exe (3 176 975 байт) (13). Теперь самое интересное - настройка Apache.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11


на тему рефераты
НОВОСТИ на тему рефераты
на тему рефераты
ВХОД на тему рефераты
Логин:
Пароль:
регистрация
забыли пароль?

на тему рефераты    
на тему рефераты
ТЕГИ на тему рефераты

Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое.


Copyright © 2012 г.
При использовании материалов - ссылка на сайт обязательна.