Oracle Application Express 4.0 Released
Наконец-то свершилось то, чего прогрессивная оракловая общественность долго ждала: вышел Oracle APEX 4.0 !.
Перейдя по вышеуказанной ссылке, вы можете посмотреть на список новых возможностей, и, конечно-же, скачать APEX 4.0.
Мне часто приходиться общаться с заказчиками и партнерами по поводу APEX, поэтому ниже я решил собрать небольшой FAQ.
1) Какая редакция СУБД Oracle Database необходима для запуска Oracle APEX 4.0 ?
Oracle Application Express 4.0 бесплатно поставляется для всех редакций СУБД Oracle Database (кроме Personal Edition): SE1, SE, EE, и XE. Версия СУБД должна быть не ниже 10.2.0.3 (это не относится к XE).
2) Говорят, что APEX предназначен для сайтов c небольшим числом пользователей (не более 10-20), иначе он начинает "тормозить" ...
Видимо Вы используете для генерации web-страниц встроенный в СУБД HTTP-сервер (PL/SQL Embedded Gateway). Для серьезных промышленных сайтов рекомендуется использовать Oracle HTTP Server, либо APEX Listener
Вариант использования PL/SQL Embedded Gateway подходит для случая когда ваше APEX-приложение будут использовать небольшое число пользователей (10-20), либо производительность неявляется критичной. При использовании нужно не забыть увеличить значениме параметра СУБД SHARED_SERVERS
Архитектурно "движок" APEX реализован в виде набора PL/SQL-процедур и таблиц метаданных, поэтому масштабируемость APEX упирается в возможности сервера, на котором установлена СУБД Oracle Database.
Самой корпорацией Oracle, APEX позиционируется на нишу небольших и средних приложений ( c числом пользователей не более 300-500). Для более крупных систем рекомендуется использовать 3-х звенную архитектуру с сервером приложений. Хотя, конечно, никто не мешает успешно эксплуатировать APEX и на большем числе пользователей, и такие примеры есть, - главное чтобы эту нагрузку "держал" сервер СУБД.
Рекомендую к прочтению перевод на русский язык, выполненный Евгением Тимошининым, хорошей статьи про оптимизации производительности APEX - APEX - Sizing Up Performance
3) Какое максимальное число одновременно работающих пользователей может "выдержать" APEX ?
Вопрос перекликается с предыдущим . Все зависит от возможностей сервера СУБД. Для высоконагруженных приложений можно порекомендовать вынос HTTP-сервера на отдельную машину.
4) Мне не нравятся визуальные темы дизайнов страниц предлагаемых в APEX.
В APEX вы имеете возможность полностью переопределить темы страниц (themes), взяв за основу существующий шаблон, либо создав его под себя. Далее вы можете использовать созданные шаблоны страниц (page templates) в многих своих приложениях.
5) У нас имеется 2-х звенное приложение (СУБД Oracle + толстый GUI-клиент), - как быстро перенести его в APEX ?
К сожалению, простого ответа на этот вопрос нет. Проблема связана даже не с APEX-ом как таковым, а с методами разработки и выполнения web-приложений, которые коренным образом различаются от соответствующих парадигм в GUI-приложениях. Если вы имеете GUI-клиент с мощным развитым интерфейсом, то потребуется его редизайн при переносе в среду Web.
Возможно хорошей идеей для вас станет вариант одновременного развития и сопровождения как GUI-клиента (для администраторов и advanced-пользователей), так и web-клиента реализованного на APEX (для обычных пользователей).
Для GUI-приложений, созданных в Oracle Forms, в составе APEX есть визард для автоматической конвертации приложения (вернее его генерации в APEX на основе определений в формсах). Но полной автоматизации конечно нет: как я уже говорил: сильно различаются философия выполнения GUI и Web-приложений.
Самое главное: при переходе в APEX ваи НЕ нужно переписывать серверную PL/SQL-логику приложения !
6) Назовите примеры сайтов, созданных на основе Oracle APEX, и желательно в России.
Много англоязычных сайтов, реализованных на APEX, приведены на сайте OTN.
Что касается российских сайтов, вот что мне удалось найти:
www.cargotracking.ru
www.sbconsulting.ru
www.glonass-ianc.rsa.ru
Список небольшой, поскольку в основном заказчики используют APEX для создания intranet-приложений.
APEX 4.0 это очень хорошо! :)
ОтветитьУдалитьGUI - как обычно слабое звено :(
Игорь напишите пожалуйста письмо Ларри, о том что такое extjs - www.extjs.com.
Людям для создания сложных приложений приходиться скрещивать ежа с ужом :) Причем не мы одни используем ext + apex. Почему же не сделать мега - средство изначально?
В APEX 4.0 появились plugins - надо эту тему развить.
>> " ... напишите пожалуйста письмо Ларри ..."
ОтветитьУдалитьХорошо - я напишу, только не Ларри а product manager-y APEX-а.
Но хорошие шаги в этом направлении уже делаются - среди новых фич заявлено "Integration of jQuery and jQuery UI"
Игорь, вопрос
ОтветитьУдалитьможет ли Апекс "нативно" реализовать функциональность BiEE по переходу между отчетами
Т.е. передавть контекст вызова.
Например:
В отчете А идет выборка столбцов А1 А2 А3 , в отчете Б теже столбцы но по фильтру выбранному в отчете А,которы определился при нажатии гипер-ссылки на пересечении соответсвующей строки и столбца.
Игорь, для коллекции ссылок российских APEX сайтов.
ОтветитьУдалитьЛичный кабинет на www.akako.ru сделан на APEX. Думаю, что у Акадо не одна сотня пользователей.
>> может ли Апекс "нативно"
ОтветитьУдалить>> реализовать функциональность BiEE >> по переходу между отчетами
К сожалению, стандартно - нет. Как вариант можно сделать Link-столбец, в передавать на страницу подчиненного отчета по этому линку параметры.
Все-таки APEX это не замена BI, - для решения этих задач есть специализированные инструменты. Не стоит пытаться на APEX реализовать полноценный BI-Tools, - это скорее всего выльется в сплошную кастомизацию.
>>Личный кабинет на www.akako.ru сделан на APEX.
ОтветитьУдалитьЯ пытался зайти на этот сайт - но он не отвечает, или он доступен только из сети Акадо (у меня другой провайдер)?
Проверил личный кабинет на akado.ru
ОтветитьУдалитьТри месяца назад он точно был на APEX. Ну невозможно перепутать ссылки APEX в адресной строке с чем-то другим!
А сейчас похоже, что перевели на PHP.
Так что этот пример отпадает.
APEX очень удобен для быстрого решения утилитарных задачек. Примерно за день сделал для программеров и аналитиков приложение для анализа разных логов (апача, перловых модулей и пр.) с продакшн сервера приложений, куда им доступа нет: regexp-ами режется инфа за день, грузится в "местную" базу SQL*Loader-ом, а там уж веб-отчётами крути-не хочу (suspicious activity на раз выявляется по сложным критериям).
ОтветитьУдалитьНасколько я помню инфу со страницы про APEX 4 там предлагается использовать APEX Listener.
ОтветитьУдалитьУ меня приложение под предыдущий APEX и работает под тем http-сервером, который идёт в "companion cd".
Не обязательно использовать APEX- листенер. Как и раньше, вы можете использовать Oracle HTTP Server (Apache); его листрибутив как и раньше входит в состав СУБД.
ОтветитьУдалитьНазывается он теперь: Oracle Fusion Middleware Web Tier Utilities 11g (11.1.1.2.0)
Его можно скачать с OTN Database Download Page. Например дистрибутив для Linux x64:
http://download.oracle.com/otn/linux/middleware/11g/ofm_webtier_linux_11.1.1.2.0_64_disk1_1of1.zip
При установке Web Tier просто выберите опцию "HTTP Server"
APEX 4 это здорово! Будем надеяться что репозитарий плагинов будет пополняться :)
ОтветитьУдалитьИнтересно ORACLE XE 11g выпустят когда нибудь? Не видно большой любви Oracle к ISV :)
В копилку сайтов на APEX -
ОтветитьУдалитьУчет личных инвестиций
Установил APEX и APEX Listner, при изменении и внесении новых записей
ОтветитьУдалить