Application Express использует веб-браузер на компьютере пользователей через Web listener в Oracle Database. Нет клиентского программного обеспечения, кроме браузера, который требуется для разработки, развертывания и выполнения. Application Express страницы отображаются с использованием HTML в браузере. Страница запросов и представлений отправляются на движок Application Express в Oracle Database.
Oracle Application Express является интегрированной функцией базы данных Oracle.
Oracle Application Express (APEX) позволяет генерировать из данных, хранящихся в БД Oracle, динамические страницы программ и обрабатывать их в режиме реального времени. При создании или расширении программ, написанных в APEX, метаданные, которые хранятся в таблицах БД Oracle, модифицируются. Во время работы программы APEX считывает метаданные и отображает программу в браузере. Образно говоря, APEX «живет» в вашей БД Oracle и представляет собой набор данных, структурированных в таблицах с большим количеством PL/SQL кода (примерно 215 таблиц и 200 PL/SQL объектов, которые содержат более 300 тысяч строк кода).
Application Express в процессе работы:
– управляет состояниями сессии;
– выполняет аутентификацию и авторизацию сервисов;
– осуществляет контроль выполнения приложений;
– выполняет проверку состояния обработок запросов;
– генерирует и обрабатывает страницы.
Минимизация потребления ресурсов процессора во время работы достигается при помощи асинхронной архитектуры управления сессией. URL запрос после отправления браузером транслируется в соответствующий PL/SQL вызов, который обрабатывается. Результаты обработки вызова передаются обратно в браузер в виде HTML страницы. Благодаря тому, что управление сессией осуществляется в базе данных, необходимость в дополнительном программном обеспечении для организации связи отпадает. Показ новой страницы сопровождается появлением новой сессии базы данных, благодаря чему достигается экономия ресурсов сервера так, как они используются лишь во время запроса к Application Express, генерации и обработке страниц.
Поскольку доступ ко всем программам, написанным в Application Express, выполняется посредством веб-браузера, для его реализации предварительно необходимо провести конфигурацию Oracle HTTP Server (Apache), в котором содержится плагин mod_plsql. Этот плагин выполняет функции коммуникатора, обеспечивающего связь веб-сервера с объектами APEX в БД Oracle, и перенаправляет в режиме реального времени запросы браузера к хранимым в БД процедурам (рисунок 1).
Архитектура БД Oracle 11g, Oracle HTTP Server (Apache) и mod_plsql может быть эквивалентно заменена архитектурой со встроенным PL/SQL шлюзом (Embedded PL/SQL Gateway – EPG). Наличие встроенного шлюза позволяет БД Oracle выполнять создание динамических приложений посредством веб-сервера и вспомогательной инфраструктуры. Шлюз работает в XML Database HTTP Server, части БД Oracle, и включает в себя основные возможности mod_plsql, но не требует отдельного веб-сервера (Oracle HTTP Server) под управлением Apache. Бесплатная версия баз данных Oracle Database 10g Express Edition (XE) также использует встроенный шлюз EPG.
Oracle Application Express полностью размещается в базе данных, он включает данные в таблицах и PL/SQL код. В не зависимости от того запускаете ли вы среду разработки или уже готовое приложение, созданное в Oracle Application Express, выполняются одни и те же процессы. Ваш браузер посылает URL-запрос, который преобразуется в соответствующий вызов Application Express PL/SQL. База данных обрабатывает PL/SQL запрос и отправляет результат обратно в браузер в виде HTML. Эти операции выполняются всегда при запросе или получении страницы. Состояние сессии приложения хранится в базе данных под управлением Application Express. Особое специальное соединение не используется. Вместо этого, каждый запрос делается в новой сессии базы данных, затрачивая минимум ресурсов CPU.
Использованы материалы http://www.smartyit.ru/oracle/42