|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Вообщем, вопрос такой: Подходит ли APEX для разработки OLTP системы типа , ну например, online торговли? Не интернет-магазина, а полноценной . Одновременно работающих пользователей с одними данными, много. Т.е. нужны блокировки , ну и подобное. При этом хотелось бы, чтобы ещё это можно было сделать "коробочным" продуктом. Ну и пользовательский интерфейс должен быть тоже на уровне. Т.е.,видимо, придется использовать какой-либо JS фреймворк. Какие могут быть проблемы? P.S. Простите, если вопрос покажется дурацким. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 16:57 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Задающий вопросыОдновременно работающих пользователей с одними данными, много. Т.е. нужны блокировки , ну и подобное. Почему из первого следует второе? И как всё это связано с OLTP? APEX поддерживает оптимистическое и пользовательское блокирование. Если Вам удастся организовать процессы, пользуясь этими моделями блокирования, то Вы можете использовать его для разработки Вашего приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2010, 17:46 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Все серьёзные в том числе промышленные системы пишут на Java. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2010, 21:24 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
DortmunderВсе серьёзные в том числе промышленные системы пишут на Java. Полноты ради Вам стоит дополнить ваше утверждение ещё одним: - всё, что написано не на Java - не серьёзные системы. Если можно - огласите Ваши критерии серьёзности. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2010, 22:09 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Задающий вопросы, Одно из самых главное преимуществ апекса, как мне кажется - это декларативный подход к разработке, то есть вы определяете данные, которые будут использоваться, а апекс сам генерит за вас GUI и процессинг. Если использовать сторонние фреймворки, то придется GUI делать руками или генерить сторонними средствами. Конечно, там тоже есть повторно используемые компоненты, но чистой декларативности не получится. Возможно это решиться (хотя бы в некоторой мере) с появлением плагинов под апекс 4. Кроме того, используя апекс, вы не можете разделить нагрузку между БД и сервером приложений, как это делается, например в J2EE. Вcя обработка в апексе делается сервером БД: и генерация GUI (тут, правда, js помогает переложить это на клиента) и обработка данных. Надо отметить, что в случае апекса разработка будет проще по сравнению с разработкой на Java, так как нужен только хороший PL/SQL разработчик (js фреймворки довольно просты в использовании), а в случае с Java еще и хороший Java-разработчик знакомый с J2EE. Есть еще много критериев для сравнения. Например, по разному решаются проблемы с переводом на другие языки. В апексе это связано с некоторыми проблемами. Особенно при установке нескольких экземпляров приложения на один сервер. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2010, 12:45 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
suPPLerDortmunderВсе серьёзные в том числе промышленные системы пишут на Java. Полноты ради Вам стоит дополнить ваше утверждение ещё одним: - всё, что написано не на Java - не серьёзные системы. Если можно - огласите Ваши критерии серьёзности. Логика бизнес-процессов в Oracle Apex целиком лежит на стороне сервера СУБД, пишите ли вы с применением хранимых процедур или реализуете ее внутри apex-а функциями Insert, Update и т.д. Промышленные системы в своей архитектуре содержат сервер приложений, вся обработка логики реализуется внутри него в т.ч. и транзакции сущностей, управление потоками, распределением нагрузкой, пулами соединений к серверу СУБД и т.д. Это сейчас можно сделать только джавой. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2010, 21:03 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Задающий вопросыВообщем, вопрос такой: Подходит ли APEX для разработки OLTP системы типа , ну например, online торговли? Не интернет-магазина, а полноценной . Одновременно работающих пользователей с одними данными, много. Т.е. нужны блокировки , ну и подобное. При этом хотелось бы, чтобы ещё это можно было сделать "коробочным" продуктом. Ну и пользовательский интерфейс должен быть тоже на уровне. Т.е.,видимо, придется использовать какой-либо JS фреймворк. Какие могут быть проблемы? P.S. Простите, если вопрос покажется дурацким. В Апекс проверка блокировки выполняется пре и пост вычислением контрольной суммы полей формы. Это что касается простых апдейтов из экранных форм. В остальном никакой разницы, поскольку основной код д.б. убран в хранимый PL/SQL. Коробочный продукт - читайте про package-приложения. JS фреймворк... в последней версии включен JQuery ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2010, 00:21 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
killedJS фреймворк... в последней версии включен JQuery + jQuery UI. Но 4.0 это пока бета. Когда она выйдет... А так последняя версия - это 3.2.1, в которую при желании подключается практически всё, что угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2010, 18:51 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
apex_users_guideЗадающий вопросы, ..... Кроме того, используя апекс, вы не можете разделить нагрузку между БД и сервером приложений, как это делается, например в J2EE. Вcя обработка в апексе делается сервером БД: и генерация GUI (тут, правда, js помогает переложить это на клиента) и обработка данных. ...... Почему собственно и не иметь какую-то БД на сервере приложений. Это не помешает распределить данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2010, 08:31 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Seloa Почему собственно и не иметь какую-то БД на сервере приложений. Это не помешает распределить данные. Поясните, пожалуйста, что вы имеете в виду. Использование DB линков? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2010, 10:40 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
разделение нагрузки между вторым слоем и бэкендом... я не считаю это значимым преимуществом для подавляющего числа проектов. По крайней мере, для меня все это перевешивается целостностью и портабельностью инсталляции апекса. В наши времена возможностей расти вертикально в аппаратной части - более чем. Кстати вариант джава-листенера возможно двигается из тех же соображений. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2010, 12:09 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
killedразделение нагрузки между вторым слоем и бэкендом... я не считаю это значимым преимуществом для подавляющего числа проектов. По крайней мере, для меня все это перевешивается целостностью и портабельностью инсталляции апекса. В наши времена возможностей расти вертикально в аппаратной части - более чем. Кстати вариант джава-листенера возможно двигается из тех же соображений. Ну да, если "подавляющее число проектов" содержит в себе объектную модель не глубже двух сущностей т.е. двух таблиц связанных между собой. Как к примеру вы будете управлять транзакциями в которых по цепочке (или в дереве) связанны между собой объекты десятка сущностей, в середине гденить у вас отвалится, а первые в цепочке ничего не знают о том что транзакцию нужно откатить. В результате в базе данных у вас каша. Сервера приложений содержат внутри себя контейнер управления транзакциями, который управляет этим как бы с наружи, транзакция на всех объектах завершается нормально только в том случае, когда все без исключении объекты цепи нормально отработали. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2010, 14:43 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Сергей.killedразделение нагрузки между вторым слоем и бэкендом... я не считаю это значимым преимуществом для подавляющего числа проектов. По крайней мере, для меня все это перевешивается целостностью и портабельностью инсталляции апекса. В наши времена возможностей расти вертикально в аппаратной части - более чем. Кстати вариант джава-листенера возможно двигается из тех же соображений. Ну да, если "подавляющее число проектов" содержит в себе объектную модель не глубже двух сущностей т.е. двух таблиц связанных между собой. Как к примеру вы будете управлять транзакциями в которых по цепочке (или в дереве) связанны между собой объекты десятка сущностей, в середине гденить у вас отвалится, а первые в цепочке ничего не знают о том что транзакцию нужно откатить. В результате в базе данных у вас каша. Сервера приложений содержат внутри себя контейнер управления транзакциями, который управляет этим как бы с наружи, транзакция на всех объектах завершается нормально только в том случае, когда все без исключении объекты цепи нормально отработали. комиты не ставьте где попало в PL/SQL коде и все будет хорошо ) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2010, 16:13 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
killed, А где его ставить? В каком месте? Еcть цепочка к примеру o1 -> o2 -> o3 -> o4 ... o10 плюс начиная с o3 идет еще одна цепочка o3 -> o11 -> o12 .. o15 т.е параллельно первой цепи стартуем с o1, рвет у вас на o11 т.е. во второй ветке а c o4 и все что за ним до o10 работают нормально откатить нужно все дерево, в каком месте в oracle я должен поставить commit? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2010, 17:36 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Сергей., я чего-то не пойму. Что из APEX мешает при неудачном завершении длительной бизнес- транзакции использовать хранимый код, откатывающий (поэтапно или разом) эту бизнес-транзакцию? Да, придётся разработать собственные механизмы, определяющие успешность выполнения этапов бизнес-транзакции и её самой в целом, средства отображения состояния таких транзакций, интерфейс для их выполнения и отката, возможно, автоматизировать периодический откат бизнес-транзакций и очистку данных, с ними связанных... Но, святые йобибайты, это ведь и есть программирование предметной области! Да, по сравнению с уже существующими технологиями работы намного больше. Но это вначале. А вначале у всех технологий было туго. Или я Вас недопонял, Сергей? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 00:12 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
Не совсем понятно - ведь пока нет сохранения, ваши данные не видят. Как можно запутать пользователей БД? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 08:18 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
apex_users_guideSeloa Почему собственно и не иметь какую-то БД на сервере приложений. Это не помешает распределить данные. Поясните, пожалуйста, что вы имеете в виду. Использование DB линков? http://www.oracle.com/global/ru/oramag/may2005/general_10g_int.html ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 08:24 |
|
Подходит ли APEX ?
|
|||
---|---|---|---|
#18+
suPPLer, Вы все правильно поняли. Для таких операций (транзакций) нужно иметь что то (назовем это механизмом управления) снаружи. Можно делать и как вы описали - разрабатывать такой механизм на pl/sql, можно использовать трехзвенку на java ee с ejb контейнером и использовать готовый механизм с переносом логики приложений в java а субд будет только хранить данные. Плюс переноса логики на сервера приложений - работа в гетерогенных средах т.е. с разными базами данных вообще, у вас на одном конце может быть oracle, на другом sybase на третьем что то еще, трехзвенке всеравно что там у вас за базы Вопрос был - что такое промышленные системы. Я ответил. В России таких систем скорее всего нет, не слышно что то :( Когда то работал в диасофте, делали там трехзвенку на com/dcom .net тогда еще не было - писали на дельфи. Система со сложными бизнес-процессами в страховании, с объектным подходом, сущностями, наследованием, методами и т.д. Основная сложность была в реализации транзакций по объектам в длинной цепочке, когда объекты друг друга не знают плюс еще они принадлежат разным классам т.е. сущностям. Вообщем городили такой механизм руками. А тут (в java ee) уже усе есть как грится, а в в java ee 6-ой версии еще лучше стало. Вообщем оба подхода имеют право на жизнь, тут уж кому как нравится. Кроме того эта тема другого раздела этого форума, потому заканчиваю тут офтопить :). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2010, 16:01 |
|
|
start [/forum/topic.php?fid=50&msg=36481599&tid=1877046]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 157ms |
0 / 0 |