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

Автор работы: Пользователь скрыл имя, 27 Декабря 2011 в 17:04, дипломная работа

Краткое описание

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

Содержимое работы - 1 файл

ДипломЛесовцев.docx

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

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

   По  некоторым оценкам, большинство PHP-сценариев (особенно не очень больших размеров) обрабатываются быстрее аналогичных  им программ, написанных на Perl. Производительность PHP вполне достаточна для создания  серьезных web-приложений.

   Языку PHP присуща гибкость. Поскольку РНР  является встраиваемым (embedded) языком, он отличается исключительной гибкостью  по отношению к потребностям разработчика. Хотя РНР обычно рекомендуется использовать в сочетании с HTML, он с таким  же успехом интегрируется  в WML, XML и в других языках. Кроме того, хорошо структурированные приложения РНР легко расширяются по мере необходимости .

   PHP полностью независим от браузеров, поскольку перед отправкой клиенту сценарии РНР полностью компилируются на стороне сервера.

   Поскольку РНР не содержит кода, ориентированного на конкретный web-сервер, пользователи не ограничиваются определенными серверами. Поскольку  серверы Apache, Microsoft IIS, Netscape Enterprise Server, Stronghold и Zeus  работают на разных платформах, РНР в целом является платформенно - независимым языком и существует на таких платформах, как UNIX, Solaris, FreeBSD и Windows 95/98/NT/2000/XP/2003.

   Все эти факторы обуславливают выбор  PHP как основного языка сценариев в разрабатываемой системе. 

Архитектура Web-баз данных

     Теперь, когда рассмотрена внутренняя архитектура  базы данных, пришло время  взглянуть  на внешнее построение системы Web-баз  данных и обсудить методологию ее разработки.

     Основная  операция Web-сервера проиллюстрирована  на рис. 2.2. Эта система состоит  из двух объектов: Web-браузера и Web-сервера. Между ними должен существовать канал  связи. Web-браузер посылает запрос на сервер, сервер отсылает обратно ответ. Для сервера, отсылающего обычные  статические страницы, такая архитектура  подходит.

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

 
Рис. 2.2 Отношение типа клиент/сервер между Web-браузером и Web-сервером требует наличия связи.
 

     Приложения Web-баз данных, которые  разрабатываются  в этом   проекте , наследуют  глобальную структуру Web-баз данных, показанную на рис. 2.3.  

Рис. 2.3 Базовая архитектура Web-баз данных включает в себя Web-браузер 
 
 

Web-cepвep, сценарный механизм и сервер  баз данных

     Типичная  транзакция Web-базы данных состоит из этапов, обозначенных цифрами на рис. 2.3.

     1. Web-браузер пользователя отправляет HTTP-запрос определенной Web-страницы.

     2. Web-сервер принимает запрос на results.php, получает файл и передает  его механизму РНР на обработку.

     3. Механизм РНР начинает синтаксический  анализ сценария. В сценарии присутствует  команда подключения к базе  данных и выполнения запроса  в ней. РНР открывает соединение  с сервером MySQL и отправляет необходимый  запрос.

     4. Сервер MySQL принимает запрос в  базу данных, обрабатывает его,  а затем отправляет результаты  — в данном случае, список книг  — обратно в механизм РНР.

     5. Механизм РНР завершает выполнение  сценария, форматируя результаты  запроса в виде HTML, после чего  отправляет результаты в HTML-формате  Web-серверу

     6. Web-сервер пересылает HTML в браузер,  с помощью которого пользователь  просматривает необходимую информацию, либо получает картинку или  другой иной файл.

     Процесс этот, как правило, протекает вне  зависимости от того, какой сценарный  механизм и какой сервер баз данных используется. Зачастую программное обеспечение Web-сервера, механизм РНР и сервер баз данных находятся на одной машине. Правда, не менее часто сервер базы данных работает на другой машине. Это делается из соображений безопасности, увеличение объема или разделения потока. С точки зрения перспектив развития, в работе оба варианта одинаковы, однако в план производительности второй вариант может оказаться более предпочтительным. 

MySQL

   MySQL - свободная система управления  реляционными базами данных. Разработка  принадлежит  Майклу  Монти  Видениус (Michael Widenius). MySQL имеет двойное  лицензирование. MySQL может распространяться  в соответствии с условиями  лицензии GPL (General Public License), это означает, что применять и модифицировать его может любой желающий. Такое ПО можно получать по Internet и использовать бесплатно. При этом каждый пользователь может изучить исходный код и изменить его в соответствии со своими потребностями. Однако по условиям GPL, если какая-либо программа включает исходные коды MySQL, то она тоже должна распространяться по лицензии GPL. Это может расходиться с планами разработчиков, не желающих открывать исходные тексты своих программ. Для таких случаев предусмотрена коммерческая лицензия компании MySQL AB, которая обеспечивает качественную защиту программных продуктов.

   MySQL является наиболее приспособленной для применения в среде web СУБД (системой управления базами данных). Известно, что для исполнения приложений клиента на большинстве хостинг- площадок провайдеры предоставляют небольшое количество ресурсов (как вычислительных, так и дисковых). Поэтому для данного применения необходима высокоэффективная СУБД, обладающая  высокой надежностью (большинство web-приложений и сайтов должны работать в режиме 24/7).

   По  всем этим причинам MySQL признана стандартом в области СУБД для web и в ней развиваются возможности для использования в любых критичных бизнес-приложениях, то есть она конкурирует на равных с такими СУБД, как Oracle, IBM, Microsoft и Sybase и при этом является бесплатной. 

Apache

   Apache HTTP - сервер (сокращение от англ. a patchy server) — свободный web-сервер.

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

   Его недостатком наиболее часто называется отсутствие удобного стандартного графического интерфейса для администраторов. 

   DHTML

Dynamic HTML или DHTML — это способ создания интерактивного веб-сайта, использующий сочетание статичного языка разметки HTML, встраиваемого (и выполняемого на стороне клиента) скриптового языка JavaScriptCSS (каскадных таблиц стилей) и DOM (объектной модели документа).

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

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

   JavaScript

   JavaScript — объектно-ориентированный скриптовый язык программирования. JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам.

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

   На JavaScript оказали влияние многие языки, при  разработке была цель сделать язык похожим на Java, но при этом лёгким для использования непрограммистами. Языком JavaScript не владеет какая-либо компания или организация, что отличает его от ряда языков программирования, используемых в веб-разработке.

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

Несмотря на схожий с Си синтаксис, JavaScript по сравнению  с языком Си имеет коренные отличия:

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

В языке отсутствуют  такие полезные вещи, как:

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

   AJAX

   AJAX (от англ. Asynchronous Javascript and XML — «асинхронный JavaScript и XML») — подход к построению интерактивных пользовательских интерфейсов веб-приложений, заключающийся в «фоновом» обмене данными браузерас веб-сервером. В результате, при обновлении данных, веб-страница не перезагружается полностью, и веб-приложения становятся более быстрыми и удобными.

По-английски AJAX произносится как эй-джэкс, по-русски довольно распространено ая́кс.

AJAX — не самостоятельная технология, а концепция использования нескольких смежных технологий. AJAX базируется на двух основных принципах:

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

     - с использованием XMLHttpReques(основной объект);

     - через динамическое создание  дочерних фреймов[1];

        - через динамическое создание  тега <script>[2].

      - использование DHTML для динамического изменения содержания страницы;

В качестве формата  передачи данных обычно используются JSON или XML.

      Преимущества:

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

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

Информация о работе База Данных с веб-интерфейсом для крупных организаций