|
|
|
Hibernate на толстом клиенте
|
|||
|---|---|---|---|
|
#18+
Есть ли смысл в хибернейте на толстом клиенте? Логика в базе на процедурах. Приложение модульное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2007, 17:41:25 |
|
||
|
Hibernate на толстом клиенте
|
|||
|---|---|---|---|
|
#18+
-1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2007, 17:50:40 |
|
||
|
Hibernate на толстом клиенте
|
|||
|---|---|---|---|
|
#18+
одна из рекомендаций. В полне обосновано ИMXО ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2007, 18:18:09 |
|
||
|
Hibernate на толстом клиенте
|
|||
|---|---|---|---|
|
#18+
четать When and How to Choose ORM ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2007, 18:19:30 |
|
||
|
Hibernate на толстом клиенте
|
|||
|---|---|---|---|
|
#18+
Гость1234567890Есть ли смысл в хибернейте на толстом клиенте? Логика в базе на процедурах. Приложение модульное. Конечно, если сможете обеспечить domain model + CRUD операции hibernate'а через хранимые процедуры. Т.е. чтобы домены сохранялись, восстанавливались из БД и т.д. не через селекты(hibernate предпочитает их) а через СП. Еще советую посмотреть на http://ibatis.apache.org/ это более легкое решение, но и менее полное. Но в случае интенсивного использования хранимых процедур стоит на него посмотреть. А так, мое imho, обработка/логика приложения должна быть а) ближе к данным, которые обрабатываются (т.е. если можно это сделать вот тут, значит делаем тут, а не тащим бог знает куда) б) выполнена с помощью адекватного инструмента (например обработка структурированных данных должна быть выполнена средствами РСУБД а не java и с другой стороны разборы xml файлов или дешифрацию данных на стороне БД делать обычно не стоит) Так что то что у вас логика в СП - это скорее всего правильно и hibernate'у (или другому ОРМ) это не помеха. Просто сам hibernate ориентирован на использование SQL операторов SELECT/UPDATE/INSERT/DELETE для реализации жизненного цикла доменов (и это имхо тоже нормально так как SQL в этом отношении более гибок) и я бы рекомендовал CRUD операции реализовывать с помощью SQL и hibernate'а (а если хотите инкапсуляции - то делайте это через updateable views) а более специфические - уже через ХП. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2007, 23:23:25 |
|
||
|
Hibernate на толстом клиенте
|
|||
|---|---|---|---|
|
#18+
funikovyuri Базу мы уже замапили (благополучно исправляя по пути многочисленные баги хибернейта при работе с ХП). Использовать ничего кроме ХП для операций с данными возможным не представляется, т.к. нужно раздавать права пользователям на строки в таблицах в зависимости от многих факторов... (в частности чтобы пользователи не видели неразрешенные им для просмотра данные). Вопрос связан скорее не с идеологией работы с данными. Пока что ощущается некоторая тяжеловестность этого интструмента: приложение загружается на 3-5 секунд дольше, размер вырос на 10-15 Мб, работа с большими объемами данных замедлилась в 2-3 раза, ухудшилась модульность, теперь классы и маппинги из модуля приходится грузить при создании SessionFactory в самом начале запуска приложения. Повысилась лишь скорость разработки. Вот и задумался, а стоило ли? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2007, 10:46:54 |
|
||
|
Hibernate на толстом клиенте
|
|||
|---|---|---|---|
|
#18+
приложение загружается на 3-5 секунд дольше Да, однозначно хибер требует пару-тройку секунд для инициализации при объемной базе. Но вроде бы несколько секунд погоды не делают. размер вырос на 10-15 Мб Странно, это многовато. Сам джарник хибера занимает 1,7 Мб. Ему еще жизненно необходимы несколько джарников еще мега на полтора. Но 10-15 это как-то много. Если создается инсталлятор, то хибер вместе с депенденсами утаптывается с помощью pack200 в 700кб. Если не создается - то 3 Мб при нынешних размерах винтов, это совсем не заметно. работа с большими объемами данных замедлилась в 2-3 раза А вот это уже серьезный недостаток. Если всякие манипуляции с настройкой производительности хибера не помогут, то есть смысл такие операции производит через jdbc. У нас при переходе на хибер не наблюдалось падение производительности выше 10-15%. ухудшилась модульность, теперь классы и маппинги из модуля приходится грузить при создании SessionFactory в самом начале запуска приложения Обычно модульность улучшается. Как так получилось, что при использовании хибера, у вас ухудшилась? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2007, 15:34:33 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34785344&tid=2144676]: |
0ms |
get settings: |
7ms |
get forum list: |
45ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
43ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 354ms |
| total: | 521ms |

| 0 / 0 |
