Система бронирования мест в отелях города

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

Для того чтобы скачать эту работу.
1. Подтвердите что Вы не робот:
2. И нажмите на эту кнопку.
закрыть



, т.к. она оперирует только с одной структурой - таблицей. К тому же, подавляющее большинство современных СУБД являются реляционными.

Перед тем как приступить к окончательному выбору СУБД, необходимо выделить набор факторов, которые необходимо учитывать.

Приведем перечень наиболее часто используемых факторов оценки СУБД:

требуемые объемы основной и дисковой памяти;

трудоемкость разработки программных средств окружения СУБД;

трудоемкость реализации приложений;

затраты на обучение персонала;

стоимость эксплуатации, информационной системы;

возможность совмещения разработки БД с ранее выполненными программными реализациями;

прогнозируемые сроки реализации информационной системы.

На основе анализа проведенного в предыдущем разделе, а также, учитывая вышеперечисленные факторы, наиболее подходящими в качестве сервера баз данных являются СУБД PostgreSQL и Mysql, так как они обладает высокой надежностью, защищенностью, хорошей производительностью, а также открытостью. Кроме того, они являются одними из наиболее распространенных.

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

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

2.3 Выбор технологии реализации

 

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

) Запрос. Клиент, с помощью web-броузера инициирует запрос к серверу по протоколу HTTP.

) Обработка запроса. После получения запроса web-сервер проводит обработку запрашиваемого ресурса. Если запрашиваем ресурс является статическим, таким как html страница, то процесс обработки фактически сводится к нулю. В противном случае, запрос отправляется соответствующему контейнеру web-приложений, где и происходит дальнейшая работа.

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

) Формирование результата. После того, как запрос обработан, информация, подготовленная для пользователя, форматируется для протокола HTTP.

) Передача данных клиенту. После формирования, данные передаются клиенту в качестве ответа. Ответ содержит данные (обычно HTML код, либо двоичные данные), а также дополнительные параметры, передаваемые в заголовках HTTP ответа.

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

ISAPI - Internet Server Application Programming Interface. Интерфейс ISAPI используются для непосредственного управления поведением Web-сервера. Так, ISAPI позволяет осуществлять доступ к функциям и службам Web-сервера Internet Information Server (IIS) фирмы Microsoft. В каждом отдельном случае применения интерфейса пишется программный код, который вызывается Web-сервером как выходная пользовательская процедура (user exit routine) или "закладка" (user hook). Процедуры вызываются в некоторых заданных (опубликованных) точках программного кода Web-сервера и записываются не в виде отдельных программ, а в виде набора библиотечных функций, действующих в качестве расширения Web-сервера.(англ. Active Server Pages - "активные серверные страницы") - технология от Microsoft, позволяющая легко разрабатывать приложения для World Wide Web. ASP работает на платформе операционных систем линии Windows NT и на веб-сервере IIS. ASP не является языком программирования - это лишь технология предварительной обработки, позволяющая подключать программные модули во время процесса формирования Web-страницы. Относительная популярность ASP основана на простоте используемых языков сценариев (VBScript или JScript) и возможности использования внешних COM-компонент.

ASP.net является составной частью платформы Microsoft.net и развитием более старой технологии Microsoft ASP. На данный момент последней версией этой технологии является ASP.net 2.0. Эта версия имеет серьезные отличия от своей предшественницы. Microsoft полностью перестроила ASP.net, основываясь на Common Language Runtime (CLR), который является основой всех приложений Microsoft.net. Программисты могут писать код для ASP.net, используя различные языки программирования, поддерживаемые в.net Framework, обычно (коммерческие) Visual Basic.net, JScript.net или C#, а также "открытые" языки, например, Perl и Python.

Сервлет - программа, которая расширяет функциональные возможности web-сервера, динамически генерируя содержание и взаимодействуя с web-клиентами при помощи принципа запрос-ответ. Web-клиентами могут быть не обязательно браузеры, это могут быть любые программы, использующие протокол HTTP.(JavaServer Pages) - технология, позволяющая веб-разработчикам динамически генерировать HTML, XML и другие веб-страницы. Является составной частью единой технологии создания бизнес-приложений J2EE. Технология позволяет внедрять Java-код, а также EL (expression language) в статичное содержимое страницы. Также могут использоваться библиотеки JSP тегов для внедрения их в JSP-cтраницы. Страницы компилируются JSP-компилятором в сервлеты, представляющие собой Java-классы, которые выполняются на сервере. Весь код страницы транслируется в java-код сервлета с помощью компилятора JSP страниц Jasper, и затем компилируется в байт-код виртуальной машины java (JVM). Сервлет-контейнеры (Tomcat), способные исполнять JSP страницы, написаны на платформонезависимом языке Java, который может работать под различными операционными системами и платформами. Сервлет-контейнеры могут работать как полноценные самостоятельные web-серверы, работать поставщиком страниц для другого web-сервера или интегрироваться в J2EE сервер приложений. Web-контейнер обеспечивает обмен данными между сервлетом и клиентами, берет на себя выполнение таких функций, как создание программной среды для функционирующего сервлета, идентификацию и авторизацию клиентов, организацию сессии для каждого из них.(Перл). Само слово Perl - аббревиатура, которая расшифровывается как Practical Extraction and Report Language (практический язык извлечений и отчётов, отчего сначала язык назывался PEARL, но затем буква "A" "потерялась"). Основной особенностью языка считаются его богатые возможности для работы с текстом, реализованные при помощи регулярных выражений.(англ. PHP: Hypertext Preprocessor - "PHP: Препроцессор Гипертекста") - скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством представителей хостинга. Входит в LAMP - "стандартный" набор для создания вебсайтов (Linux, Apache, MySQL, PHP (Python или Perl)). PHP отличается наличием ядра и подключаемых модулей, "расширений": для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т.п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения. Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и др. Однако в таком качестве он не получил распространение.(от англ.common Gateway Interface - "общий интерфейс шлюза") - стандарт интерфейса, служащего для связи внешней программы с веб-сервером. Программу, которая работает по такому интерфейсу совместно с веб-сервером, принято называть шлюзом, хотя многие предпочитают названия скрипт (сценарий) или CGI-программа. Сам интерфейс разработан таким образом, чтобы можно было использовать любой язык программирования, который может работать со стандартными устройствами ввода/вывода. Такими возможностями обладают даже скрипты для встроенных командных интерпретаторов операционных систем, поэтому в тех случаях, когда нет нужды в сложной функциональности, могут использоваться даже такие простые командные скрипты. Отличается от остальных рассматриваемых технологий тем, что является наиболее низкоуровневой и является стандартом интерфейса, который служит для связи внешней программы с web-сервером.

У ISAPI, как и у других расширений web-серверов имеется один существенный недостаток - это привязка к конкретному Web - серверу. Но для проекта требуется платформа пригодная для построения относительно сложных гетерогенных web-систем, поэтому технология ISAPI не является пригодной для реализации проекта.

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