|
|
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Развивает и поддерживаем проект по контекстной рекламе, структура "пользователь"-"рекламные компании"-"ключевые фразы". Все это крутится на PostgreSQL + Hibernate, и уже начинает тормозить... Кто использует Hibernate в БОЛЬШИХ проекта, и вообще подходит он для этого (хочу руководство убедить выкинуть Hibernate). Интересен не только личный опыт, но и общая статистика, например "Google использует Hibernate", или "ХХХ использует Hibernate", чтоб понять можно на нем большие проекты "готовить" или нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:10:28 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Пару вопросов: Что такое "большой" проект? Размер базы? Количество одновременно работающих пользователей? Тут достаточно большой список пользователей :-) Вряд ли у наших коллег будут большие проекты А что собственно тормозит? Hibernate? Т.е. persistence? Или база? Или бизнес логика? Что про это думает г-н профайлер (например, этот )? Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 18:05:42 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
N/AПару вопросов: Что такое "большой" проект? Размер базы? Количество одновременно работающих пользователей? Тут достаточно большой список пользователей :-) Вряд ли у наших коллег будут большие проекты А что собственно тормозит? Hibernate? Т.е. persistence? Или база? Или бизнес логика? Что про это думает г-н профайлер (например, этот )? Удачи. >>Что такое "большой" проект? Проект "ХХХХХ" - контекстная реклама, часть проекта "Русский поисковик" >>Размер базы? Х.З. >>Количество одновременно работающих пользователей? Х.З. думаю до 500 >>А что собственно тормозит? Создание массива ключевых слов, из массива рекламных компаний >>Или база? Или бизнес логика? И то и то, доступно ТОЛЬКО через RMI и тормозит, пока... ИХМО, что для поисковика Hibernate отстой. Кто нибудь знает "на чем" другие поисковики работаю? помоему 99.99% Hibernatа там и нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 18:27:24 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
IMHO Hibernate не для этого сделан. Он упрощает persistence process, a в Вашем случае важна скорость и гибкость. Сам такими вещами не занимаюсь, но может это поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 18:33:59 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
N/AПару вопросов: Что такое "большой" проект? Размер базы? Количество одновременно работающих пользователей? Тут достаточно большой список пользователей :-) Вряд ли у наших коллег будут большие проекты А что собственно тормозит? Hibernate? Т.е. persistence? Или база? Или бизнес логика? Что про это думает г-н профайлер (например, этот )? Удачи. Что-то список тех,кто использует hibernate не впечатляет:-) Какие-то незнакомые имена (кроме PriceWaterhouseCoopers, Tampa, Florida )- мне кажется этот список наооборот дискредитирует hibernate. Для больших промышленных баз лучше HIBERNATE не использовать - производительность очень страдает. Сам на текущем проекте плююсь, но ничего поделать не могу. по требованию заказчика hibernate должен быть в архитектуре. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 18:43:30 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmm N/AПару вопросов: Что такое "большой" проект? Размер базы? Количество одновременно работающих пользователей? Тут достаточно большой список пользователей :-) Вряд ли у наших коллег будут большие проекты А что собственно тормозит? Hibernate? Т.е. persistence? Или база? Или бизнес логика? Что про это думает г-н профайлер (например, этот )? Удачи. >>Что такое "большой" проект? Проект "ХХХХХ" - контекстная реклама, часть проекта "Русский поисковик" >>Размер базы? Х.З. >>Количество одновременно работающих пользователей? Х.З. думаю до 500 >>А что собственно тормозит? Создание массива ключевых слов, из массива рекламных компаний >>Или база? Или бизнес логика? И то и то, доступно ТОЛЬКО через RMI и тормозит, пока... ИХМО, что для поисковика Hibernate отстой. Кто нибудь знает "на чем" другие поисковики работаю? помоему 99.99% Hibernatа там и нет Три раза гы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 18:46:49 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1) На hibernate можно одинаково легко написать быструю систему и тормозную. Все зависит от Ваших познаний, опыта и желания писать качественно. 2) hibernate нужно использовать для вполне определенного круга задач и не пытаться свалить на него, те задачи, для решения которых он не предназначен; 3) если вы не знаете точных количественных и качественных характеристик проекта, в котором используется инструмент, как Вы можете предлагать выбросить его? Может сначала попробовать разобраться, что именно работает медленно, где имеет место падение производительности? Уверен, что hibernate (в случае правильного использования) не виноват. Если виноват, то смотрите, как он используется. Наверняка криво-прекриво. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 07:21:01 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
N/AIMHO Hibernate не для этого сделан. Он упрощает persistence process, a в Вашем случае важна скорость и гибкость. Сам такими вещами не занимаюсь, но может это поможет? Сам поиск реализовал, х.з. как, но говорят что там все БД+"движок"+сервак, самописное. Через RMI из "поиска" берется статистика по словам, из Postgre+Hibernate берутся данные о рекламодателях, вот Postgre+Hibernate тормозит, наверно потому что Hibernate бины "отражают" таблицы, а тавлицы в 1-2 нормальных форма, т.к. кроме индексов, не 1-на из возможностей СУБД не используется (спасибо Hibernate , мать его...). Если нормализовать БД к 3 форме, и все таблицы описать в Hibernate, то это "вешалка". Наверно из-за нормализации тормазит, т.к. БД "рисуют" Java-программисты, а не БД-деволоперы. (спасибо Hibernate , о БД думать не надо). Просто такое впечатление что через пол года все работу с БД придется заново писать, а делать одно и тоже второй раз просто в лом. Мнеб ссылку что "поисковики X,Y,Z не используют Hibernate, а используют ХХХ" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 10:13:12 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
сколько работаешь в проекте, с явой, с БД, с хибернейт в частности? спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 10:29:52 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
просто интересуюсьсколько работаешь в проекте, с явой, с БД, с хибернейт в частности? спасибо. в проект- 1 мес с явой - 2 года с хибернейт - 1 год ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 10:32:25 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmm N/AIMHO Hibernate не для этого сделан. Он упрощает persistence process, a в Вашем случае важна скорость и гибкость. Сам такими вещами не занимаюсь, но может это поможет? Сам поиск реализовал, х.з. как, но говорят что там все БД+"движок"+сервак, самописное. Через RMI из "поиска" берется статистика по словам, из Postgre+Hibernate берутся данные о рекламодателях, вот Postgre+Hibernate тормозит, наверно потому что Hibernate бины "отражают" таблицы, а тавлицы в 1-2 нормальных форма, т.к. кроме индексов, не 1-на из возможностей СУБД не используется (спасибо Hibernate , мать его...). Если нормализовать БД к 3 форме, и все таблицы описать в Hibernate, то это "вешалка". Наверно из-за нормализации тормазит, т.к. БД "рисуют" Java-программисты, а не БД-деволоперы. (спасибо Hibernate , о БД думать не надо). Просто такое впечатление что через пол года все работу с БД придется заново писать, а делать одно и тоже второй раз просто в лом. Мнеб ссылку что "поисковики X,Y,Z не используют Hibernate, а используют ХХХ" Во-во, это самое хреновое,когда возможности СУБД не используются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:20:09 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmm просто интересуюсьсколько работаешь в проекте, с явой, с БД, с хибернейт в частности? спасибо. в проект- 1 мес с явой - 2 года с хибернейт - 1 год Судя по опыту и предыдущим высказываниям, пора тебе завязывать с программированием. ХЗ и Мать Его, перемешанные с беспочвенными обвинениями и неуклюжими попытками описать проект и ответить на вопросы, характеризуют тебя не случшей стороны. Я, например, так и не понял, почему ты такой бедный не можешь нормализовать БД и использовать возможности СУБД, и как Хибернейт во всем этом виноват. А то, что в создании базы не принимали участие ДБА, так кто ж вам доктор, что такие программеры, как ты, создают .Hibernate бины, которые "отражают" таблицы. Бред сивой кобылы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:24:34 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmmРазвивает и поддерживаем проект по контекстной рекламе, структура "пользователь"-"рекламные компании"-"ключевые фразы". Все это крутится на PostgreSQL + Hibernate, и уже начинает тормозить... Кто использует Hibernate в БОЛЬШИХ проекта, и вообще подходит он для этого (хочу руководство убедить выкинуть Hibernate). Интересен не только личный опыт, но и общая статистика, например "Google использует Hibernate", или "ХХХ использует Hibernate", чтоб понять можно на нем большие проекты "готовить" или нет Уважаемый,это гиблый проект. Так и скажите руководству. Что все загнется с hibernate. Лучше уже прямо СЕЙЧАС начать переписывать приложение без hibernate, потому что позже все равно придется это делать - лучше раньше,чем позже:-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:25:34 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
BlackWall Судя по опыту и предыдущим высказываниям, пора тебе завязывать с программированием. ХЗ и Мать Его, перемешанные с беспочвенными обвинениями и неуклюжими попытками описать проект и ответить на вопросы, характеризуют тебя не случшей стороны. Я, например, так и не понял, почему ты такой бедный не можешь нормализовать БД и использовать возможности СУБД, и как Хибернейт во всем этом виноват. А то, что в создании базы не принимали участие ДБА, так кто ж вам доктор, что такие программеры, как ты, создают . Hibernate бины, которые "отражают" таблицы. Бред сивой кобылы. >>ты такой бедный не можешь нормализовать БД могу, но этого нельзя делать, т.к. другие проекты "полетят" >>и использовать возможности СУБД это категорически запрещено, т.к. по идеологии все делается через Хибернейт >>что в создании базы не принимали участие ДБА, так кто ж вам доктор, что такие программеры, как ты, создают а я не 3 в одно >>"отражают" таблицы - Бред сивой кобылы я можно по подробней? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:34:51 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java guest dremmmmmРазвивает и поддерживаем проект по контекстной рекламе, структура "пользователь"-"рекламные компании"-"ключевые фразы". Все это крутится на PostgreSQL + Hibernate, и уже начинает тормозить... Кто использует Hibernate в БОЛЬШИХ проекта, и вообще подходит он для этого (хочу руководство убедить выкинуть Hibernate). Интересен не только личный опыт, но и общая статистика, например "Google использует Hibernate", или "ХХХ использует Hibernate", чтоб понять можно на нем большие проекты "готовить" или нет Уважаемый,это гиблый проект. Так и скажите руководству. Что все загнется с hibernate. Лучше уже прямо СЕЙЧАС начать переписывать приложение без hibernate, потому что позже все равно придется это делать - лучше раньше,чем позже:-) Чтобы этот проект перестал быть гиблым, нужно не переписывать его на "без хибернейт", а уволить разработчиков и нанять тех, кто хоть что-то понимает в работе. Хибернейт не служит для создания табличек в бд. Он служит для маппинга из реаляционных таблиц в объекты. Ничто не мешает использовать stored procedures, native sql, маппинг views и другие особенности баз банных совместно с хибернейт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:37:48 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Где факты? Где данные о том, что причина "гиблости" в Хибере? Поразительно... Со стороны это просто смешно. Но если есть желание потратить пару месяцев сверху, реализуя слой доступа к БД, писать бесконечные SELECT/UPDATE/INSERT/DELETE, то почему нет? Может, и кеширование свое лучше будет, и оптимизацию запросов сделаете лучше? Или может, Postgre настолько уникальная, что предоставляет бесконечные возможности использования ее особенностей, и тогда, позже, если понадобиться перейти на другую СУБД, без работы не остаться? Вах, как мы любим писать тонны кода. Интересно, а что если ПОТОМ тоже все будет тормозить? Будем продвигать идею смены СУБД? А может, RMI тут что-то делает? А зачем, кстати, оно здесь, что гоняем по сети? И все-таки возвращаясь к теме, ЧТО ТАКОЕ БОООЛЬШОЙ ПРОЕКТ? 1млн записей и 10 таблиц, 1 тыс. строк кода? Фу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:40:11 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmm >>"отражают" таблицы - Бред сивой кобылы я можно по подробней? Можно. dremmmmm Если нормализовать БД к 3 форме, и все таблицы описать в Hibernate, то это "вешалка". Наверно из-за нормализации тормазит Так можно нормализовывать, или нельзя? Если нельзя, то тут действительно не факт, что стоит использовать Хибер. Но не потому что он такой плохой, а потому что могут быть сложности маппинга. А 1 или 2 НФ - это не есть хорошо. Был бы оракл, можно было бы сделать нормализованную базу со стороны приложения, сделав обертку на представлениях и INSTEAD OF триггерах. Что есть похожего в Postgre - не знаю. Кстати, использовать особенности конкретной СУБД - не есть хорошо в любом случае, разве что бизнес логика построена на хранимых процедурах. Здесь Хибернейт опять же не поможет, но снова вопрос - а как насчет других СУБД? Сегодня не нужно, а завтра? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:54:32 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
BlackWallГде факты? Где данные о том, что причина "гиблости" в Хибере? Поразительно... Со стороны это просто смешно. Но если есть желание потратить пару месяцев сверху, реализуя слой доступа к БД, писать бесконечные SELECT/UPDATE/INSERT/DELETE, то почему нет? Может, и кеширование свое лучше будет, и оптимизацию запросов сделаете лучше? Или может, Postgre настолько уникальная, что предоставляет бесконечные возможности использования ее особенностей, и тогда, позже, если понадобиться перейти на другую СУБД, без работы не остаться? Вах, как мы любим писать тонны кода. Интересно, а что если ПОТОМ тоже все будет тормозить? Будем продвигать идею смены СУБД? А может, RMI тут что-то делает? А зачем, кстати, оно здесь, что гоняем по сети? И все-таки возвращаясь к теме, ЧТО ТАКОЕ БОООЛЬШОЙ ПРОЕКТ? 1млн записей и 10 таблиц, 1 тыс. строк кода? Фу. Ты рассматриваешь СУБД,как свалку данных. Честно говоря я не понимаю,зачем может понадобиться переход на другую базу. В чем практическая ценность? В любом случае переход на другую СУБД предполагает другую реализацию,другой подход. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:56:04 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
NotGonnaGetUsОн служит для маппинга из реаляционных таблиц в объекты. я дико извиняюсь, а не наоборот? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:57:54 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
+1 am_sasa NotGonnaGetUsОн служит для маппинга из реаляционных таблиц в объекты. я дико извиняюсь, а не наоборот? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:01:38 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Большой проект - google, а здель хотят сделать больше\лучше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:02:45 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmmБольшой проект - google, а здель хотят сделать больше\лучше Тогда вы не с того начали, переплюньте сперва Google File System ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:06:40 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmmБольшой проект - google, а здель хотят сделать больше\лучше Это наиваная УТОПИЯ. C hibernate они не сделаю лучше,чем GOOGLE. будут страшшшшшшннннныыыые тормоза. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:06:41 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
BlackWall dremmmmm >>"отражают" таблицы - Бред сивой кобылы я можно по подробней? Можно. dremmmmm Если нормализовать БД к 3 форме, и все таблицы описать в Hibernate, то это "вешалка". Наверно из-за нормализации тормазит Так можно нормализовывать, или нельзя? Если нельзя, то тут действительно не факт, что стоит использовать Хибер. Но не потому что он такой плохой, а потому что могут быть сложности маппинга. А 1 или 2 НФ - это не есть хорошо. Был бы оракл, можно было бы сделать нормализованную базу со стороны приложения, сделав обертку на представлениях и INSTEAD OF триггерах. Что есть похожего в Postgre - не знаю. Кстати, использовать особенности конкретной СУБД - не есть хорошо в любом случае, разве что бизнес логика построена на хранимых процедурах. Здесь Хибернейт опять же не поможет, но снова вопрос - а как насчет других СУБД? Сегодня не нужно, а завтра? >>Если нельзя, то тут действительно не факт, что стоит использовать Хибер что значит нельзе нормализомать? это из "кобылы" :-). Вот вьюхи использовать нельзя, это из Хибернэта, типа а вдруг в д.р. базе... так и делам таблицы приближенные к вьюхам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:11:15 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Oracle -developer Ты рассматриваешь СУБД,как свалку данных. Честно говоря я не понимаю,зачем может понадобиться переход на другую базу. В чем практическая ценность? В любом случае переход на другую СУБД предполагает другую реализацию,другой подход. Это я то? Как свалку? Не я ли говорю про нормальные формы? Странно слышать в свой адрес. Переход на другую базу может понадобиться хотя бы в том случае, когда существующая СУБД перестанет справляться с объемами данных. Ясное дело, Оракл девелопер не понимает. Мы же говорим о Postgres. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:13:30 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
N/A dremmmmmБольшой проект - google, а здель хотят сделать больше\лучше Тогда вы не с того начали, переплюньте сперва Google File System Переплюним :-), если руководство ресурсов $ не пожает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:14:23 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java - dev dremmmmmБольшой проект - google, а здель хотят сделать больше\лучше Это наиваная УТОПИЯ. C hibernate они не сделаю лучше,чем GOOGLE. будут страшшшшшшннннныыыые тормоза. Пачему? Где тормоза? В каком месте? Ясное дело, используя чистый JDBC, реально можно добиться бОльшей производительности, но мы говорим о быстрой разработке с приемлемой производительностью, или о медленной с максимальной (и то не факт)? страшшшшшшннннныыыые - это сссссиииииилллллььььнннноооо ссссскккккааааззззааааанннннооооо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:16:35 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ты определись уже с нормализацией. dremmmmm>>ты такой бедный не можешь нормализовать БД могу, но этого нельзя делать, т.к. другие проекты "полетят" dremmmmm>>Если нельзя, то тут действительно не факт, что стоит использовать Хибер что значит нельзе нормализомать? это из "кобылы" :-). Где правда? dremmmmmВот вьюхи использовать нельзя Да неужели? А в чем разница для приложения где представление, а где таблица? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:21:39 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
BlackWallТы определись уже с нормализацией. dremmmmm>>ты такой бедный не можешь нормализовать БД могу, но этого нельзя делать, т.к. другие проекты "полетят" dremmmmm>>Если нельзя, то тут действительно не факт, что стоит использовать Хибер что значит нельзе нормализомать? это из "кобылы" :-). Где правда? dremmmmmВот вьюхи использовать нельзя Да неужели? А в чем разница для приложения где представление, а где таблица? я вообще за курсоры+JDBC, но ООП+ВСЯ логика модно, пусть скорость в N раз меньше, зато "гибко"... вьюхи - это SQL, sql != hibernate, вот поэтому и нельзя, а если на одной БД можно быструю вьюху написать а на другой нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:28:41 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmm BlackWallТы определись уже с нормализацией. dremmmmm>>ты такой бедный не можешь нормализовать БД могу, но этого нельзя делать, т.к. другие проекты "полетят" dremmmmm>>Если нельзя, то тут действительно не факт, что стоит использовать Хибер что значит нельзе нормализомать? это из "кобылы" :-). Где правда? dremmmmmВот вьюхи использовать нельзя Да неужели? А в чем разница для приложения где представление, а где таблица? я вообще за курсоры+JDBC, но ООП+ВСЯ логика модно, пусть скорость в N раз меньше, зато "гибко"... вьюхи - это SQL, sql != hibernate, вот поэтому и нельзя, а если на одной БД можно быструю вьюху написать а на другой нет? Во-во. программы то пишут для программистов,а не для пользователей:-) это насчет гибкости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:31:44 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Интересно, что на rsdn.ru похожая ветка "Новый WEB-проект" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:45:24 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmmРазвивает и поддерживаем проект по контекстной рекламе, структура "пользователь"-"рекламные компании"-"ключевые фразы". Все это крутится на PostgreSQL + Hibernate, и уже начинает тормозить... Кто использует Hibernate в БОЛЬШИХ проекта, и вообще подходит он для этого (хочу руководство убедить выкинуть Hibernate). Интересен не только личный опыт, но и общая статистика, например "Google использует Hibernate", или "ХХХ использует Hibernate", чтоб понять можно на нем большие проекты "готовить" или нет Руководство поддается на уговоры? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 16:51:16 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
am_sasa NotGonnaGetUsОн служит для маппинга из реаляционных таблиц в объекты. я дико извиняюсь, а не наоборот? Скажем так: в обе стороны, но генерацию схем по классам, я, н-р, не приветствую, т.к. искуственным интеллектом эти инструменты генерации пока не обладают. Сначала стоит вспомнить/узнать особенности конкретной базы данных (типы блокировок, типы индексов и т.п.), потом прикинуть какие данные будут храниться и какие операции скорее всего будут над ними производиться, набрасать схему и затем уже производить маппинг. Забывать о том, что за хибернейтом стоит база данных никогда нельзя. Поэтому не наоборот. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 18:03:08 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java - dev dremmmmmРазвивает и поддерживаем проект по контекстной рекламе, структура "пользователь"-"рекламные компании"-"ключевые фразы". Все это крутится на PostgreSQL + Hibernate, и уже начинает тормозить... Кто использует Hibernate в БОЛЬШИХ проекта, и вообще подходит он для этого (хочу руководство убедить выкинуть Hibernate). Интересен не только личный опыт, но и общая статистика, например "Google использует Hibernate", или "ХХХ использует Hibernate", чтоб понять можно на нем большие проекты "готовить" или нет Руководство поддается на уговоры? лучше честно скажите руководству что hibernate не знаете и знать не хотите ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 18:57:21 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Люблю дискуссии, особенно люблю их в отношении абсолютно устаревших (по определению) механизмов. Заодно прикольно наблюдать споры людей, к базам данных имеющим весьма специфическое отношение (видимо, парочка проектов таблиц на двадцать) Зато теперь знаю, на что уходят лучшие мозги проектировщиков на Java А не подскажет ли мне какой-нибудь профессиональный пользователь Hibernate такую вещь: Имеется (к примеру) серьезный корпоративный проект основанный на (скажем) 1000 табличек + 500-600 вьюшек. Более того, есть особые нюансы при изменениях табличек (и также вьюх), зависящие от грантов пользователя, влажности воздуха и прочих погодных условий. Да, и неплохо было бы нормально отслеживать транзакции в этом приложении. Вопрос - Hibernate с этим справится? Даже не так...Справится ли программист, которому суждено описать 1500 классов? Или я неправильно понимаю этот чудесный продукт? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 20:42:41 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_ТыЛюблю дискуссии, особенно люблю их в отношении абсолютно устаревших (по определению) механизмов. Каких? Баз данных? Ух_ТыЗаодно прикольно наблюдать споры людей, к базам данных имеющим весьма специфическое отношение (видимо, парочка проектов таблиц на двадцать) Откуда это следует? Покажи мне этот потолок. Ух_ТыИли я неправильно понимаю этот чудесный продукт? Не только этот. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 21:16:30 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
я Ух_ТыЛюблю дискуссии, особенно люблю их в отношении абсолютно устаревших (по определению) механизмов. Каких? Баз данных? Ух_ТыЗаодно прикольно наблюдать споры людей, к базам данных имеющим весьма специфическое отношение (видимо, парочка проектов таблиц на двадцать) Откуда это следует? Покажи мне этот потолок. Ух_ТыИли я неправильно понимаю этот чудесный продукт? Не только этот. А еще обожаю хамов ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 21:28:02 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_ТыЛюблю дискуссии, особенно люблю их в отношении абсолютно устаревших (по определению) механизмов. Заодно прикольно наблюдать споры людей, к базам данных имеющим весьма специфическое отношение (видимо, парочка проектов таблиц на двадцать) Зато теперь знаю, на что уходят лучшие мозги проектировщиков на Java А не подскажет ли мне какой-нибудь профессиональный пользователь Hibernate такую вещь: Имеется (к примеру) серьезный корпоративный проект основанный на (скажем) 1000 табличек + 500-600 вьюшек. Более того, есть особые нюансы при изменениях табличек (и также вьюх), зависящие от грантов пользователя, влажности воздуха и прочих погодных условий. Да, и неплохо было бы нормально отслеживать транзакции в этом приложении. Вопрос - Hibernate с этим справится? Даже не так...Справится ли программист, которому суждено описать 1500 классов? Или я неправильно понимаю этот чудесный продукт? Работаю с hibernate 2 года, с РСУБД 5 лет, участвовал в разработке на мой взгляд "крупных корпоративных" проектов (билинг [~ 500 таблиц] у одного из крупных телекоммуникационных операторов и 2х банковских систем)... :) этого достаточно? При этом считаю за честь работать с таким продуктом как hibernate ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 22:51:53 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
2автор как можно заметить даже по одному этому топику - с хибернейтом реальных специалистов очень мало но все точно знают что этакрута. Пытаться что-то менять в этом ключе очень трудно, в любой момент могут сказать что это ты чего-то неправильно делаешь а "вот там! а вот у кого-то! там ого-го!". Поэтому наиболее простое решение это взять кусок приложения и протестировать с чистым ждбц и хибернейтом. На большом объёме, жедательно для хибернейта отдельно указать сколько ресурсов уходит на работу с данными а сколько на разную вспомогательную шелуху. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 01:29:12 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
funikovyuri Работаю с hibernate 2 года, с РСУБД 5 лет, участвовал в разработке на мой взгляд "крупных корпоративных" проектов (билинг [~ 500 таблиц] у одного из крупных телекоммуникационных операторов и 2х банковских систем)... :) этого достаточно? При этом считаю за честь работать с таким продуктом как hibernate Поддерживаю на 100% !!! СУБД - 8 лет; Java - 5 лет; Hibernate - 4 года. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 06:28:22 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
10242автор Поэтому наиболее простое решение это взять кусок приложения и протестировать с чистым ждбц и хибернейтом. На большом объёме, жедательно для хибернейта отдельно указать сколько ресурсов уходит на работу с данными а сколько на разную вспомогательную шелуху. Делали. Пришли к выводам, что hibenrate делает свою работу достаточно быстро и тягаться с ним не стоит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 06:29:37 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
pretender пишет: > Поэтому наиболее простое решение это взять кусок приложения и > протестировать с чистым ждбц и хибернейтом. На большом объёме, > жедательно для хибернейта отдельно указать сколько ресурсов уходит на > работу с данными а сколько на разную вспомогательную шелуху. Где можно почитать про hibernate, но не "этот класс делает то-то", а общие концепции, чтобы понять, что и как делать. А то несколько раз на разных языках делал нечто подобное, но на java повторять то, что уже есть, не хочется. PS: очень желательно, чтобы это можно было читать не с экрана. На работе некогда, а дома компьютер не переношу... -- Алексей Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 07:22:46 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
pretender 10242автор Поэтому наиболее простое решение это взять кусок приложения и протестировать с чистым ждбц и хибернейтом. На большом объёме, жедательно для хибернейта отдельно указать сколько ресурсов уходит на работу с данными а сколько на разную вспомогательную шелуху. Делали. Пришли к выводам, что hibenrate делает свою работу достаточно быстро и тягаться с ним не стоит. Это от количества таблиц в запросе зависит, у нас (на прошлой работе) 4 человека 2 месяц пытались сделать "достаточно быстро", результат "несправились", я там был "самый молодой" (чтоб не говирили что все ламеры и неумеют его готовить), пришлось использовать, JDBC+хранимые процедуры возращающие курсоры, но быстрая "логика" реазиванная в БД многие кажется отстойной... Вопрос был в другом, кто использует hibenrate? список на сайте hibenrate, не очень убедительный, вот еслибы я спросил кто использует EJB или OLE... список фирм был бы другой :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 10:16:16 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmm pretender 10242автор Поэтому наиболее простое решение это взять кусок приложения и протестировать с чистым ждбц и хибернейтом. На большом объёме, жедательно для хибернейта отдельно указать сколько ресурсов уходит на работу с данными а сколько на разную вспомогательную шелуху. Делали. Пришли к выводам, что hibenrate делает свою работу достаточно быстро и тягаться с ним не стоит. Это от количества таблиц в запросе зависит, у нас (на прошлой работе) 4 человека 2 месяц пытались сделать "достаточно быстро", результат "несправились", я там был "самый молодой" (чтоб не говирили что все ламеры и неумеют его готовить), пришлось использовать, JDBC+хранимые процедуры возращающие курсоры, но быстрая "логика" реазиванная в БД многие кажется отстойной... Вопрос был в другом, кто использует hibenrate? список на сайте hibenrate, не очень убедительный, вот еслибы я спросил кто использует EJB или OLE... список фирм был бы другой :-) правда заключается в том что действительно не умеете его готовить... давай те приводите конкретный пример который требует оптимизации - тогда и поговорим. ЗЫ у хибернейта один недостаток - он сложный :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 10:52:59 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
не, не нужный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 11:05:03 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
funikovyuri ЗЫ у хибернейта один недостаток - он сложный :) авторне, не нужный ПАРАДОКС! правы оба .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 12:00:50 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Парадокс в другом - одни используют Хибернейт, и чувствуют ощутимую пользу от его использования, в то время как другие пытаются чего-то делать, почему-то не получается, и требуют, чтобы первые доказывали, что пользя-таки есть. Ждите с моря погоды. Кстати, список компаний, использующих EJB2.1 до сих пор, может быть огромным, но ведь это не значит, что он (EJB2.1) дает производительность, сравнимую с Hibernate/EJB3. Так что, список - не показатель. А если для вас показатель, то к чему спор. Наслаждайтесь obsolete технологией. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 12:34:13 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
BlackWallПарадокс в другом - одни используют Хибернейт, и чувствуют ощутимую пользу от его использования, в то время как другие пытаются чего-то делать, почему-то не получается, и требуют, чтобы первые доказывали, что пользя-таки есть. Ждите с моря погоды. Кстати, список компаний, использующих EJB2.1 до сих пор, может быть огромным, но ведь это не значит, что он (EJB2.1) дает производительность, сравнимую с Hibernate/EJB3. Так что, список - не показатель. А если для вас показатель, то к чему спор. Наслаждайтесь obsolete технологией. Да ладно тебе,не нервничай так:-) А то что с hibarnate тормозит сильно - это объективный факт. Важно - для работы с маленькими базами он очень подходит!здесь никто не спорит. Что бы быстро наклепать приложение и использовать его,не тратя время. Но ни в коем случае не использовать для работы с большими базами!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 12:48:18 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
не, не нужный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 12:51:42 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1024не, не нужный от упрямый! а за денюшки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 13:14:04 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
не, не нужный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 13:21:52 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
чет само дублируется или с форумом че ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 13:29:18 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_ТыЛюблю дискуссии ... Высоцкий песню написал - "я не люблю ..." у вас тоже есть все шансы Ух_ТыИмеется (к примеру) серьезный корпоративный проект основанный на (скажем) 1000 табличек + 500-600 вьюшек. это значит, что проесктов было несколько, развивались они продолжительное время и связаны между собой. Стратегически верным было бы уменьшать связность между ними. Ничего страшного нет в хорошо спроектированной domain model таких размеров. Ух_Ты Более того, есть особые нюансы при изменениях табличек (и также вьюх), зависящие от грантов пользователя, влажности воздуха и прочих погодных условий. А вот это уже "своя книжка в чужой мечети". Либо ваши domain model классы реализуют всю эту логику, а их результаты этих мегаобновлений выпуливаются хиберов в простые запросы. Либо вы сажаете на вашу корову (приложение со сложной логикой в БД) седло (Хибер) и говорите что седло - говно. Я тут даже спорить не буду - факт:"хибер г-но". Ух_ТыДа, и неплохо было бы нормально отслеживать транзакции в этом приложении. Я думаю чем чем но этим явистов не загнобить. (к сожалению к хиберу это отношения не имеет). как старые монструозные AppServ так и новомодные IoC контейнеры в транзакциях рулят и рвут всех и вся в совершенные клочья Ух_ТыВопрос - Hibernate с этим справится? Даже не так...Справится ли программист, которому суждено описать 1500 классов? Вам нужен кодер продвинутый в ООПе и в Хибере (обе составляющие оочень важны). Ух_ТыИли я неправильно понимаю этот чудесный продукт? Вы ассимилируете его призмой имеющегося у вас опыта. Думаю по этому он вам не подойдёт. Вы рассматриваете его как объектную нашлёпку (как я понимаю, не вам нужную, а навязываемую) для вашего old-age приложения. Конечно путём кропотливого фака можно придумать и сконфигурить его, для чего-то подобного, но целесообразность этого как у пришивания рукава к ... Как правило рефакторинг old-age'а штука болезненная, и болезненно бессмысленная, лучше убить и родить заново или интегрировать с пом. разл. интерфейсов ... типа коннекторов ИМХО: 1.Хибер имеет большие отличия от ОО СУБД, эта одна из проблем у новичков, которые воспринимают его как серебрянную пулю. Они думают: "ух ты, нах, обёкты персистятся сами ..." Потом оказывается, что не все, не совсем они, а удалить "ваще капец". Одно из таких отличий атрибут insert на ассоциациях - нужен для чего?? для того что бы не требовалось "понимать" SQL если не ясно о чём я - попробуйте без него. Это ограничение позволило сделать его простым и эффективным 2. в нём есть своеобразная коллекция "баянов" изучаются которые посредством ударения об стену собственной головой (пример- поищите на форуме хибера many-to-many remove inverse side - забавно). неплохо было бы гденибудь такую коллекцию собрать. Есть идеи?? 3. И традиционное: "хибер нужен только для того что нужен и для другого он не нужен" а именно для мэйнстримного вёба. Понятно что его можно юзать как угодно и где угодно. Но у него есть изначальная область для которой он писался. (можете биографию кинга посмотреть). Ясен пень что в приложениии где например данные пишутся каким нибудь old-age'ем в real time'е, два роскошных уровня кэша тока мешают. ну и не надо там его юзать как и для рутинных bulk updateов. Зато хибер можно ахиренно кластеризовать и использовать там где его кэш действитеьно нужен . всем пока ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 14:01:13 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
похоже 1024 прав... не, не нужный))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 14:09:27 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Итог форума - смертный приговор Hibernate! Не дадим загубить проекты этой пакостью!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 16:27:13 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java devИтог форума - смертный приговор Hibernate! Не дадим загубить проекты этой пакостью!!! и зачем только в детском саду интернет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 17:07:41 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
funikovyuri Java devИтог форума - смертный приговор Hibernate! Не дадим загубить проекты этой пакостью!!! и зачем только в детском саду интернет? Просьба без аргументов не выступать здесь голословно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 17:16:39 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java - devПросьба без аргументов не выступать здесь голословно Чтобы не быть голословным - вот "большой проект", использующий Hibernate. "Большой" в смысле количества таблиц (за сотню), функций работы с данными (несколько тысяч), размера таблиц (несколько таблиц - под десяток миллионов записей). http://]http://www.catalog-on-demand.com Hibernate используется ровно постольку, поскольку это разумно. Есть общий код для определенный операций, написанный в Hibernate; писать его самому да еще дублировать там и сям - глупость. Поэтому если код Hibernate делает то, что иначе пришлось бы долго и нудно писать (и получилось бы в лучшем случае то же самое), используется Hibernate. А есть проблемно-ориентированный код, который в Hibernate не реализован или реализован слишком общо, а следовательно, работает неэффективно в частном случае. Такой код пишется ручками, оптимизируется и проч. Иначе говоря, использование средств типа Hibernate - всегда баланс между располагаемым временем (производительностью кодирования) и производительностью приложения. Есть куча времени - пишите голый JDBC, будет летать. Но писать будете долго, отлаживать еще дольше, а если еще понадобится срочно и быстро дописать / переписать... сочувствую. Времени в обрез - используйте Hibernate везде, кроме мест, где действительно то, что делает Hibernate - лишнее и лучше написать на более низком уровне. Я вынужден быть ближе ко второму подходу, потому что делать надо за дни и часы, а не за недели. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 17:31:59 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов Java - devПросьба без аргументов не выступать здесь голословно Чтобы не быть голословным - вот "большой проект", использующий Hibernate. "Большой" в смысле количества таблиц (за сотню), функций работы с данными (несколько тысяч), размера таблиц (несколько таблиц - под десяток миллионов записей). http://]http://www.catalog-on-demand.com Hibernate используется ровно постольку, поскольку это разумно. Есть общий код для определенный операций, написанный в Hibernate; писать его самому да еще дублировать там и сям - глупость. Поэтому если код Hibernate делает то, что иначе пришлось бы долго и нудно писать (и получилось бы в лучшем случае то же самое), используется Hibernate. А есть проблемно-ориентированный код, который в Hibernate не реализован или реализован слишком общо, а следовательно, работает неэффективно в частном случае. Такой код пишется ручками, оптимизируется и проч. Иначе говоря, использование средств типа Hibernate - всегда баланс между располагаемым временем (производительностью кодирования) и производительностью приложения. Есть куча времени - пишите голый JDBC, будет летать. Но писать будете долго, отлаживать еще дольше, а если еще понадобится срочно и быстро дописать / переписать... сочувствую. Времени в обрез - используйте Hibernate везде, кроме мест, где действительно то, что делает Hibernate - лишнее и лучше написать на более низком уровне. Я вынужден быть ближе ко второму подходу, потому что делать надо за дни и часы, а не за недели. Система в промышленной эксплуатации?:-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 18:02:58 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmmРазвивает и поддерживаем проект по контекстной рекламе, структура "пользователь"-"рекламные компании"-"ключевые фразы". Все это крутится на PostgreSQL + Hibernate, и уже начинает тормозить... Кто использует Hibernate в БОЛЬШИХ проекта, и вообще подходит он для этого (хочу руководство убедить выкинуть Hibernate). Интересен не только личный опыт, но и общая статистика, например "Google использует Hibernate", или "ХХХ использует Hibernate", чтоб понять можно на нем большие проекты "готовить" или нет В любом случае для посиковых систем hibernate не подходит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 18:03:33 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
он подходит для сложных изменений большой модели. И там где запросы частенько попадают в кэш - типа "сущность-по-первичному-ключу". если вам нужно отображать результаты кишковыворачивающих SQL запросов (и кэшнуть их низя) то понятно что база которая эти запросы выполняет есть узкое место а хибер бесполезная нашлёпка. Но если туева хуча юзеров дыбает каталог из базы - то хинтов в кэш там будет много и если логика (хибер) работает там же где и представление (кто так не делает или имеет ооочень веские причины или не здоров), то хибер ну очень помогает - разница между первым запросом (к базе) и вторым (из кэша) просто огромна если хибер тормозит то у него есть довольно большие возможности по прокачке. для фатальных случаев кластер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 18:52:48 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
автори зачем только в детском саду интернет? к сожалению это не детский сад а настоящая жизнь. И если толпы студентов говорят чтоэтакрута то тысячи леммингов не могут ошибаться. И вот в проект требующий высокой производительности включают подобные нашлёпки над скл. И обычные программасты типа меня с этим мучаются. Ну не надо мне этого, я одним запросом всё сделаю и пойду вотку пить с дружками вместо бдения перед монитором. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 21:10:37 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов Java - devПросьба без аргументов не выступать здесь голословно Чтобы не быть голословным - вот "большой проект", использующий Hibernate. "Большой" в смысле количества таблиц (за сотню), функций работы с данными (несколько тысяч), размера таблиц (несколько таблиц - под десяток миллионов записей). http://]http://www.catalog-on-demand.com Hibernate используется ровно постольку, поскольку это разумно. Есть общий код для определенный операций, написанный в Hibernate; писать его самому да еще дублировать там и сям - глупость. Поэтому если код Hibernate делает то, что иначе пришлось бы долго и нудно писать (и получилось бы в лучшем случае то же самое), используется Hibernate. А есть проблемно-ориентированный код, который в Hibernate не реализован или реализован слишком общо, а следовательно, работает неэффективно в частном случае. Такой код пишется ручками, оптимизируется и проч. Иначе говоря, использование средств типа Hibernate - всегда баланс между располагаемым временем (производительностью кодирования) и производительностью приложения. Есть куча времени - пишите голый JDBC, будет летать. Но писать будете долго, отлаживать еще дольше, а если еще понадобится срочно и быстро дописать / переписать... сочувствую. Времени в обрез - используйте Hibernate везде, кроме мест, где действительно то, что делает Hibernate - лишнее и лучше написать на более низком уровне. Я вынужден быть ближе ко второму подходу, потому что делать надо за дни и часы, а не за недели. Уважаемый мессир. А не будете ли вы так любезны объяснить, почему такой обалденный сайт( https://www.catalog-on-demand.com) вообще не реагирует на мышку и на кнопки? Нуно какое-то вошебное слово? Иначе Вашу деятельность я не могу "восприять" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 00:10:58 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
[quot 1024]И если толпы студентов говорят чтоэтакрута то тысячи леммингов не могут ошибаться./quot] "...Стоит повторить некоторые ключевые положения: · Картостроение и паковка - очень разные стратегии · Паковка - это усердно насаждаемая общественная норма · Мир приспособлен для паковщиков · Язык бизнеса - это язык паковщиков · Результаты картостроения называют "здравым смыслом" · Здравый смысл не так распространен · Картостроители считают паковщиков циниками или лентяями · Паковщики считают картостроителей иррациональными · Паковщики проводят большую часть своего времени играя в политику · Последнее, что учитывают в политике, - разум · Картостроители часто заблуждаются насчет психологии паковщика · Паковщики обычно правильно понимают психологию паковщика · Картостроители часто заблуждаются насчет психологии картостроителя · Паковщики всегда неправильно понимают психологию картостроителя · У картостроителей нет руководящей ими культуры · Большинство картостроителей учатся сами, как Маугли · Картостроители могут обучить себя сами! · Картостроители могут научиться у других · Картостроители часто сталкиваются с вызовом со стороны общества · Картостроители в наше время редко реализуют свой потенциал · Если уж ситуация понята, она может быть изменена..." (C) "The Programmers' Stone / Программистский камень" "Паковщики" - это "лемминги". Те, кто делает так, как научили. "Картостроители" - это те, кто делает так, как подсказывает здравый смысл. "Лемминги" бегут дружно и быстро. Все равно куда - на пшеничное поле или в омут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 00:20:11 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
В любом случае для посиковых систем hibernate не подходит Конечно не подходит. А еще поисковые системы не делают на реляционных СУБД. Все нормальные поисковые системы используют специализированные индексы "на голых файлах". При необходимости распределенные на n узлов индексы. Использование РСУБД для поисковой системы замечательно показывает, какие мегапрофессионалы тут поливают hibernate. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 05:00:50 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
хуже татарина В любом случае для посиковых систем hibernate не подходит Конечно не подходит. А еще поисковые системы не делают на реляционных СУБД. Все нормальные поисковые системы используют специализированные индексы "на голых файлах". При необходимости распределенные на n узлов индексы. Использование РСУБД для поисковой системы замечательно показывает, какие мегапрофессионалы тут поливают hibernate. "Использование РСУБД для поисковой системы замечательно показывает, какие мегапрофессионалы тут поливают hibernate". Как дети (c) "Гений" У меня скоро от вас ребята истерика будет. Почему именно на этом форуме, посвященном этому удивительному и ужасному Java (под который не написано НИ ОДНОГО безглючного приложения или компонента), люди умудряются кидаться нешуточными заявлениями по поводу профпригодности? Кстати, любезный - про Oracle Context Cartridge не слышал случайно? Такая же штука и в SQL Server имеется...Я конечно понимаю, что твой (видимо любимый) FireBird такими возможностями не обладает. Но ты же мегапрофессионал!!!! ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 08:14:53 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов[quot 1024]И если толпы студентов говорят чтоэтакрута то тысячи леммингов не могут ошибаться./quot] "...Стоит повторить некоторые ключевые положения: · Картостроение и паковка - очень разные стратегии · Паковка - это усердно насаждаемая общественная норма · Мир приспособлен для паковщиков · Язык бизнеса - это язык паковщиков · Результаты картостроения называют "здравым смыслом" · Здравый смысл не так распространен · Картостроители считают паковщиков циниками или лентяями · Паковщики считают картостроителей иррациональными · Паковщики проводят большую часть своего времени играя в политику · Последнее, что учитывают в политике, - разум · Картостроители часто заблуждаются насчет психологии паковщика · Паковщики обычно правильно понимают психологию паковщика · Картостроители часто заблуждаются насчет психологии картостроителя · Паковщики всегда неправильно понимают психологию картостроителя · У картостроителей нет руководящей ими культуры · Большинство картостроителей учатся сами, как Маугли · Картостроители могут обучить себя сами! · Картостроители могут научиться у других · Картостроители часто сталкиваются с вызовом со стороны общества · Картостроители в наше время редко реализуют свой потенциал · Если уж ситуация понята, она может быть изменена..." (C) "The Programmers' Stone / Программистский камень" "Паковщики" - это "лемминги". Те, кто делает так, как научили. "Картостроители" - это те, кто делает так, как подсказывает здравый смысл. "Лемминги" бегут дружно и быстро. Все равно куда - на пшеничное поле или в омут. Зато похоже многие употребляют психотропные средства. Этим обычно дискуссии по Java и заканчиваются... Вопрос по поводу здравого смысла (вернемся к Hibernate) Зачем разработчику приложений под БД нужен этот атавизьм? О чем думали те яйцеголовые которые его разрабатывали? Что, база уже не в состоянии выполнить многие пожелания господина-программиста? Для чего нужна эта прокладка? Что курили те люди, которые решили что статические XML-контейнеры решат все проблемы начинающих "джавистов"? Что за бред? Мало ли какой у меня SQL? Или решаем проблемы в стиле "возьмем таблички emp/dept"? Вместо того чтобы заниматься реальными проблемами в Java (а их очень много касаемо интерфейса), мне предлагают продукт для даунов-индусов аля Oracle Forms (только еще хуже). И находятся люди, которые его защищают. Я даже понимаю почему -потому что ничего другого нет, а разрабатывать свое весьма стремно в рамках быстрого получения балабосов за успешно собранный проект на 100 табличек (кстати, почему под большим проектом кто-то подразумевает миллионы записей? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 09:41:14 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Интересно, каким местом нужно считать себя "разумным не лемингом, поступающим исключительно рационально" и при этом струячить в 576 раз запрос sql и код разбора к нему? :) Я люблю всех, кто не любит хибернейт - это сильные духом люди, пусть слегка и далёкие от ооп и прочих радостей жизни. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 11:16:55 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
маппинг не ооп. отказ от скл из-за нежелания учиться это глупо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 13:33:52 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_Ты Кстати, любезный - про Oracle Context Cartridge не слышал случайно? Такая же штука и в SQL Server имеется...Я конечно понимаю, что твой (видимо любимый) FireBird такими возможностями не обладает. Но ты же мегапрофессионал!!!! ))) Да, мне хорошо известно, что в Oracle и MS SQL Server есть поддержка полнотекстового поиска. Если вам не понятно, чем full text index отличается от поисковой системы, то ваши слова про д/с применимы к вам в полной мере. Еще раз утверждаю, ни одна взрослая, нормальная, полноценная, как угодно назовите поисковая система не использует РСУБД для поисковых индексов. Непонятен пассаж про "мой (видимо любимый) Firebird", подозреваю, что вы меня путаете с кем-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 19:14:13 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1024маппинг не ооп. отказ от скл из-за нежелания учиться это глупо зайчег, в hibernate есть HQL + Native Queries для написания запросов на SQL целевой СУБД... Если вы ничего такого не используете, то совсем не обязательно в этом виноват hibernate, вполне возможно что проблема кое в чем другом... :) ЗЫ самое смешное что "критики" судя по всему вообще не понимают предмета спора и больше всего похожи на каких-то воинствующих взбесившихся леммингов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 23:28:54 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
funikovyuri 1024маппинг не ооп. отказ от скл из-за нежелания учиться это глупо зайчег, в hibernate есть HQL + Native Queries для написания запросов на SQL целевой СУБД... Если вы ничего такого не используете, то совсем не обязательно в этом виноват hibernate, вполне возможно что проблема кое в чем другом... :) ЗЫ самое смешное что "критики" судя по всему вообще не понимают предмета спора и больше всего похожи на каких-то воинствующих взбесившихся леммингов смотрю уже перешли на албанский ) в ADF Swing тоже есть Native Queries. Только они служат вспомогательным целям. Суть - таже как и в Hibernate. Что - в Hibernate научились строить динамические контейнеры? хуже татарина Да, мне хорошо известно, что в Oracle и MS SQL Server есть поддержка полнотекстового поиска. Если вам не понятно, чем full text index отличается от поисковой системы, то ваши слова про д/с применимы к вам в полной мере. Еще раз утверждаю, ни одна взрослая, нормальная, полноценная, как угодно назовите поисковая система не использует РСУБД для поисковых индексов. Непонятен пассаж про "мой (видимо любимый) Firebird", подозреваю, что вы меня путаете с кем-то. ну извини. Просто отсылка к FireBird постоянно присутствует в такого рода религиозных войнах :) И ты хочешь сказать, что гугль собирает информацию в "голых" файлах? В жисть не поверю...(да и про его ориентацию на Oracle я вроде как читал) Гугль - нормальная поисковая система? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 00:20:25 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
2хуже татарина Да, забыл спросить (даже внимания не обратил сначала) - а что такое Full Text Index? я вроде бы упоминал про Context Cartridge...Может быть в этом основа нашего с Вами недопонимания? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 00:26:06 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
2funikovyuri авторзайчег фи, какая фамильярность. Засунь себе своего зайчега сам знаешь куда. авторЗЫ самое смешное что "критики" судя по всему вообще не понимают предмета спора и больше всего похожи на каких-то воинствующих взбесившихся леммингов 1.Хочешь померяться? 2.Здесь нет споров. На тему посмотри 2хуже татарина авторЕще раз утверждаю, ни одна взрослая, нормальная, полноценная, как угодно назовите поисковая система не использует РСУБД для поисковых индексов гугл для поисковых индексов использует MySQL например. Микрософт вполне вероятно MS SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 01:40:09 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_Ты ну извини. Просто отсылка к FireBird постоянно присутствует в такого рода религиозных войнах :) И ты хочешь сказать, что гугль собирает информацию в "голых" файлах? В жисть не поверю...(да и про его ориентацию на Oracle я вроде как читал) Гугль - нормальная поисковая система? Гугл - моя самая любимая поисковая система. :) Судя по открытой информации он использует для хранения поисковых индексов распределенную файловую систему Google File System . Она представляет из себя специализированую надстройку над "голыми файлами". РСУБД - отличная штука, но она не предназначена для полнотекстового поиска, другие у нее задачи. "Каждому свое" (С). Теперь про Oracle ConText Cartridge. Насколько мне известно, это фактически специализированный движек полнотекстового поиска, который ставится "рядом" с самой СУБД Oracle, индексирует в своих полнотекстовых индексах заданные текстовые поля таблиц БД и предоставляет возможность использовать предикаты на текст проиндексированных полей в SQL запросах к СУБД. Похожее решение существует и для MS SQL Server. Я утверждаю, что СУБД, дополненную "нашлепкой" в виде движка полнотекстового поиска нельзя использовать как полноценную поисковую систему. Вот есть у вас к примеру (извините за банальность) интернет-магазин, который использует для хранения данных такую РСУБД. Тогда задача "прикрутить к магазину полнотекстовый поиск по заданному набору полей" хорошо решается средствами ConText Cartridge и ему подобных. А вот поисковую систему а-ля Яндекс или там Гугл или даже в 100 раз меньших масштабов поисковую систему так сделать не получится. Потому что не масштабируется оно до такой степени. В задачах, которые типично решают средствами РСУБД, бывает что возникает небольшие подзадачи полнотекстового поиска по содержимому БД. Но это именно что подзадачи. Это как перец в блюде, его немножко есть и хорошо. А поисковая система основной задачей имеет полнотекстовый поиск, а РСУБД в ней вообще может не быть. Или использоваться для вспомогательных задач. Пытаться поисковую систему сделать на базе РСУБД, это все равно что готовить блюдо, состоящее почти из одного перца. Горько. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 03:03:24 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1024гугл для поисковых индексов использует MySQL например. Микрософт вполне вероятно MS SQL Я был бы вам очень признателен, если бы вы указали мне, где можно почитать об этом удивительном для меня факте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 03:05:05 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_Ты Что курили те люди, которые решили что статические XML-контейнеры решат все проблемы начинающих "джавистов"? Стало интересно, что такое "статические XML-контейнеры". Я не так долго работаю с Java, поэтому наверное не слышал о таком. Просветите? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 03:07:44 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
10242funikovyuri авторзайчег фи, какая фамильярность. Засунь себе своего зайчега сам знаешь куда. Извини, сорвалось :) 1024 авторЗЫ самое смешное что "критики" судя по всему вообще не понимают предмета спора и больше всего похожи на каких-то воинствующих взбесившихся леммингов 1.Хочешь померяться? 2.Здесь нет споров. На тему посмотри 1. чем я хочу с тобой померяться? 2. во как оказывается :) Ух_Ты 1. При чем тут ADF SWING? Какие "динамические контейнеры"? А статические это какие? 2. Судя по ответу про HQL/Native Queries вы не в курсе, о чем тогда вообще можно разговаривать? Без них вы по-определению ничего эффективного написать не сможете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 10:04:48 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_ТыКстати, любезный - про Oracle Context Cartridge не слышал случайно? Такая же штука и в SQL Server имеется...А в DB2 что, такого нет? Почему же тогда DB2 считается лучше Oracle? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 11:47:13 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_ТыИ ты хочешь сказать, что гугль собирает информацию в "голых" файлах? А ведь таки "да"! В голых файлах. А прототипирование поиска пишут на Java, потом доводят до ума для производительности на C ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 11:49:36 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1024гугл для поисковых индексов использует MySQL например. Микрософт вполне вероятно MS SQL Трудно сказать, что они используют. Я в проектах, использующих Hibernate, всегда стараюсь использовать MyISAM таблицы MySQL. Поскольку они без транзакций, работают очень быстро. А транзакции (если вообще нужна двухфазная фиксация) и ссылочная целостность поддерживаются на уровне Hibernate / прикладного кода - там, где это надо. Опять имею разумный баланс производительности и функциональности. Вообще спор пошел на уровне "а у нас в квартире газ, а у вас?". Нет никакой абсолютной истины. Есть разумные решения в конкретных ситуациях, причем это решения, использующие все известные возможности плюс интуицию / анализ / сопрставление / комбинирование. Решения, основанные на соображениях "все делают это так" или "мне аказали, что надо делать так", в программировании редко бывают разумными. Хорошо, если вообще работающими. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 14:00:50 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Может имеет смысл поискать в инете перечень наиболее крупных компаний-клиентов JBoss, использующих вышеуказанную технологию? C уважением Lord Mayton ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 14:50:22 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1024маппинг не ооп. отказ от скл из-за нежелания учиться это глупо Чему учиться? Писать select * from bla-bla и итерироваться по резалт сетам? Или нужно учиться каждый раз писать собственный кастрат хибернейта, чтобы не дублировать код простых запросов и обработки результатов? Нормального ооп без маппинга не получится. Кому-то всё равно придётся разруливать как представлять в бд классы наследники, создаваемые динамически ассоциации между объектами и т.п., а это и есть маппинг. Только без хибернейт это будет наколенная поделка. Кстати, поражаюсь вашим выводам. Первой же строчкой в мануале по хибернейт написано: хибернейт не избавляет от необходимости знать и понимать работу с базами данных и sql. Защитники голого sql похожи на фанатов с++: "мы всю жизнь всё делали через задницу потому что так "быстро" работает, а вы все олухи", в то время как другие технологии позволяют быстро делать тоже самое и естественным путём. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 15:54:54 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
оффтоп это всё. Нет никаких споров. Тема топика: Кто использует Hibernate в БОЛЬШИХ проекта Вы использовали? Раскажите как вы боролись с высокими потерями в производительности. 2автор только тестовый прогон на большом объёме данных. Разговаривать про что-то где-то у кого-то нет смысла, будет также как здесь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 16:41:34 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1024оффтоп это всё. Нет никаких споров. Тема топика: Кто использует Hibernate в БОЛЬШИХ проекта Вы использовали? Раскажите как вы боролись с высокими потерями в производительности. Что значит "большой проект"? Выводить клиенту в грид миллион записей и ждать, когда он проскроллит до нужной? Тут Хибер НЕНУЖЕН! Вывести клиенту список айтемов html-страницами по 50 и при выборе одного открыть его html-страницу с каскадно связанными сущностями? Вроде как hiber как раз для этого? Или я что-то не понимаю. И как раз если проект большой -> связанных сущностей больше чем 3 или 30 то и пользы от hiberа пропорционально больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 19:46:42 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1024... Вы использовали? Раскажите как вы боролись с высокими потерями в производительности. ... найти - это значит наполовину решить. где были проблемы?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 09:51:29 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Большой база - бальшой базовод!!! Работать с большим данным лучше на базоводе. ВЫплюнуть всю базу на сторону клинета (по отношению у базе) там на просто бины (JAVABEAN) и большие бины (EJB) и крутить джавиными массивами - будет туго. У нас как услышали что есть такое EJB так туда все запихают (типа в кэш) и радуются что разгрузили базовод (у меня лично оракл и mssql, второе дерьмо правда, но нужен ).... в итоге как обычно получается иструмент которые работает с базой так "налегке", а разгрузочный (сервер приложении) успевай процы с мозгами добавлять ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 10:28:26 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов 1024гугл для поисковых индексов использует MySQL например. Микрософт вполне вероятно MS SQL ... А транзакции (если вообще нужна двухфазная фиксация) и ссылочная целостность поддерживаются на уровне Hibernate / прикладного кода - там, где это надо.... Дааа... Вы меня извините,но вас пора увольнять за такую архитектуру. Поддрежка ссылочной целостности на уровне приложения:-) Том Кайт: "... Один из наших консультантов рекомендовал отменить проверку ввода городов и посоветовал нам проводить проверку правильности всех городов с помощью внешнего кодирования.Аргументровал он тем,что проверка ссылочной целостности отнимет слишком много времени и замедлит процесс ввода данных.Я не совсем уверен в правильности его доводов.Обоснованы ои его аргументы?" Я порекомендовал избавиться от этого консультанта как можно быстрее " Вот так быстрые разработчики хреновых приложений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 10:43:54 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Oracle -developer М.Голованов 1024гугл для поисковых индексов использует MySQL например. Микрософт вполне вероятно MS SQL ... А транзакции (если вообще нужна двухфазная фиксация) и ссылочная целостность поддерживаются на уровне Hibernate / прикладного кода - там, где это надо.... Дааа... Вы меня извините,но вас пора увольнять за такую архитектуру. Поддрежка ссылочной целостности на уровне приложения:-) Том Кайт: "... Один из наших консультантов рекомендовал отменить проверку ввода городов и посоветовал нам проводить проверку правильности всех городов с помощью внешнего кодирования.Аргументровал он тем,что проверка ссылочной целостности отнимет слишком много времени и замедлит процесс ввода данных.Я не совсем уверен в правильности его доводов.Обоснованы ои его аргументы?" Я порекомендовал избавиться от этого консультанта как можно быстрее " Вот так быстрые разработчики хреновых приложений. Oracle e-Business Suite (почти) без констрейнтов, и что? Не сотвори себе кумира (ц) хз чей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 10:49:33 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
SAP R/3 тоже с констрэйнтами напряг... Нэт ключей нет геморой, есть маркетинг (и аху..й откат) - есть "хороший" продукт за большие деньги... Вот нэпанимаю, "констрэйнты" на "где-то" (в маленьких бинах, в больших бинах....), круто ... проект действительно будет аху-й ресурсоемкий, интересно кокова его совокупная стоимость владения????? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 11:19:12 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
SELECT-ы низкоуровневый подход, странно я хоть и не знаток хибернэта. Но куда уж проще чем селект ... даже я его знаю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 11:39:25 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов Я в проектах, использующих Hibernate, всегда стараюсь использовать MyISAM таблицы MySQL. Поскольку они без транзакций, работают очень быстро. А транзакции (если вообще нужна двухфазная фиксация) и ссылочная целостность поддерживаются на уровне Hibernate / прикладного кода - там, где это надо. Опять имею разумный баланс производительности и функциональности. Круто! Очень интересно было бы послушать про то как вы с помощью hibernate организовывали транзакции на нетранзакционном ресурсе (MySQL). Буквально новое слово БД-строении будет ;) ЗЫ про констрейнты Oracle -developer уже сказал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 12:02:02 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
был несколько удивлён: М.ГоловановЯ в проектах, использующих Hibernate, всегда стараюсь использовать MyISAM таблицы MySQL. Поскольку они без транзакций, работают очень быстро. А транзакции (если вообще нужна двухфазная фиксация) и ссылочная целостность поддерживаются на уровне Hibernate / прикладного кода - там, где это надо. Опять имею разумный баланс производительности и функциональности. Извините, но если ваша БД работает в READ_UNCOMMITED то боюсь, уже ничего не поможет. Двухфазные tx - нужны для отката нескольких БД - думаю редко актуально. Если база одна то сессия работает с обычным соединением и JDBC транзакцией. Если её уровень изоляции стоит в READ_UNCOMMITED то вы выбираете сырые данные, оттображаете их наивному пользователю, он принимает какое то решение на основании тех данных, которые к этому моменту могут быть откачены. В общем ерунда какая то ... может конечно в мускуле хитрость какая-то есть? какая ннить "почти изоляция"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 12:11:05 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Господа, ну какие Вы словами бросаетесь!!! Есть старая доброе заключение "удобство" величина обратна пропорционально производительности. 1С - абстрагирована по самое не хочу (документы... справочники...), но тормозит, в ассемблере уровень абстракции вообще "банан" но блин работает быстро... Поэтому пишу в MS ВОРДЕ и "рисую" в ER/BP-WIN. И программерам говорю нужна производиетельность (это ключ проекта). Либо закрытие ахуе.... функционального блока в режиме "быстро/дешево" (тормоза регламентами разруляем).... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 12:39:42 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
exppбыл несколько удивлён: ... Если её уровень изоляции стоит в READ_UNCOMMITED то вы выбираете сырые данные, оттображаете их наивному пользователю, он принимает какое то решение на основании тех данных, которые к этому моменту могут быть откачены. В общем ерунда какая то ... может конечно в мускуле хитрость какая-то есть? какая ннить "почти изоляция"? 1. Если Вы программируете приложение "правильно" (то есть серия связанных обновлений в БД у Вас выполняется теоретически "мгновенно" и не прерывается ожиданием окончания каких-либо сторонних процессов), никаких "сырых" данных быть не может. Читается только то, что уже есть в таблицах. 2. Нет никаких хитростей. Есть ISAM таблицы, которые обновляются в порядке прихода запросов на обновление страниц, и есть InnoDB таблицы, с которыми сервер работает в режиме обычных транзакций (по умолчанию, естественно, autocommit). Я хотел сказать, что я использую первый вариант, вполне сознательно. При правильном программировании приложения (много-много-пользовательского, несомненно) и использовании некоторых весьма полезных механизмов Hibernate (версии, в частности) мне удается обеспечить максимальную производительность операции с данными (ISAM - наиболее скоростной доступ) и целостность / согласованность. БЕЗ использования транзакций на уровне БД. Ваше удивление, насколько понимаю, обусловлено незнанием других способов обеспечения целостности / согласованности, кроме транзакций, как они специфицированы в SQL. На самом деле это наиболее неэффективный из всех возможных способов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 18:09:51 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
авторВаше удивление, насколько понимаю, обусловлено незнанием других способов обеспечения целостности / согласованности, кроме транзакций, как они специфицированы в SQL. На самом деле это наиболее неэффективный из всех возможных способов. Опа! Транзакции в скл серверах неэффективны. И вашем изделии они реализованы лучше? Смешно. Вы хоть представляете что это такое? Мне кажется вы ошибаетесь и до реализации транзакций на уровне большой тройки производителей вам очень и очень далеко. Десятки человеколет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 18:19:36 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
авторВаше удивление, насколько понимаю, обусловлено незнанием других способов обеспечения целостности / согласованности, кроме транзакций, как они специфицированы в SQL. На самом деле это наиболее неэффективный из всех возможных способов. Мания величия однозначно. Автор заявляет,что его реализация механизма транзакций лучше и эффективнее, чем реализация IT-монстров, таких как Microsoft и Oracle. Вот-как раз таки здесь явное "изобретение" велосипеда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 18:41:09 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов Ваше удивление, насколько понимаю, обусловлено незнанием других способов обеспечения целостности / согласованности, кроме транзакций, как они специфицированы в SQL. На самом деле это наиболее неэффективный из всех возможных способов. Эти ваши супер-эффективные механизмы способны разрулить вставку хотя бы 1 000 записей в секунду одновременно 10 пользователями при условии, что железо большой СУБД (типа Oracle) тянет такую скорость? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 18:41:46 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов 1. Если Вы программируете приложение "правильно" (то есть серия связанных обновлений в БД у Вас выполняется теоретически "мгновенно" и не прерывается ожиданием окончания каких-либо сторонних процессов), никаких "сырых" данных быть не может. Читается только то, что уже есть в таблицах. Это, если говорить мягко, неправда... М.Голованов Ваше удивление, насколько понимаю, обусловлено незнанием других способов обеспечения целостности / согласованности, кроме транзакций, как они специфицированы в SQL. На самом деле это наиболее неэффективный из всех возможных способов. Хм... Иногда лучше жевать.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 18:54:12 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
нет, нет, нет - явная провокация. от меня никаких комментов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 19:21:39 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
funikovyuri М.ГоловановЧитается только то, что уже есть в таблицах. Это, если говорить мягко, неправда... То есть как неправда? В ISAM доступ к конкретной записи всегда последователен - что на чтение, что на обновление. Что можно прочитать в каждый данный момент, кроме того, что в этот момент есть в записи? funikovyuriХм... Иногда лучше жевать.... Вот именно. SQL транзакции позволяют беззаботно жевать. Был у меня знакомый программист... всегда писал так: Код: plaintext 1. 2. и спокойно жевал. Все железно и по правилам. А не тянет - берем сервак покруче... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 19:38:03 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
То есть как неправда? В ISAM доступ к конкретной записи всегда последователен - что на чтение, что на обновление. Что можно прочитать в каждый данный момент, кроме того, что в этот момент есть в записи? Вы б почитали про уровни изоляции чтоли... автори спокойно жевал. Все железно и по правилам. А не тянет - берем сервак покруче... Не совсем понял зачем в приведенном примере begin tran/commit, но так или иначе искренне советую перестать пороть чушь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 19:45:01 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов То есть как неправда? В ISAM доступ к конкретной записи всегда последователен - что на чтение, что на обновление. Что можно прочитать в каждый данный момент, кроме того, что в этот момент есть в записи? Я бы вам посоветовал вначале прочитать теорию БД. Что такое "грязное чтение" (вы, как я понимаю, работаете именно так) и к чему оно приводит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 19:50:03 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
вот и докатились до аналогов FireBird ) Эй, "хуже татарина" - ну что я говорил? Уже пошли разговоры про то, как база свои данные обновляет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 20:40:52 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
хуже татарина Стало интересно, что такое "статические XML-контейнеры". Я не так долго работаю с Java, поэтому наверное не слышал о таком. Просветите? Ну не знаю я - туповат наверно. Для меня это - описание таблиц (которое хранится в трогательном XML), к которым предполагается применить SQL. Для дальнейшего изменения данных. А Вы разве не работали с Hibernate? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 20:47:12 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_Ты хуже татарина Стало интересно, что такое "статические XML-контейнеры". Я не так долго работаю с Java, поэтому наверное не слышал о таком. Просветите? Ну не знаю я - туповат наверно. Для меня это - описание таблиц (которое хранится в трогательном XML), к которым предполагается применить SQL. Для дальнейшего изменения данных. А Вы разве не работали с Hibernate? зато вы с ним уж точно не работали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 21:09:25 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
насколько я понял вы с хибернейтом не очень. Не засоряйте топик. Либо поделитесь решением вопросов производительности ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 23:19:10 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
funikovyuri То есть как неправда? В ISAM доступ к конкретной записи всегда последователен - что на чтение, что на обновление. Что можно прочитать в каждый данный момент, кроме того, что в этот момент есть в записи? Вы б почитали про уровни изоляции чтоли... А как уровни изоляции применимы к ISAM базе данных? Вы бы про ISAM почитали, что ли... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 23:48:41 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
ррмяф М.Голованов То есть как неправда? В ISAM доступ к конкретной записи всегда последователен - что на чтение, что на обновление. Что можно прочитать в каждый данный момент, кроме того, что в этот момент есть в записи? Я бы вам посоветовал вначале прочитать теорию БД. Что такое "грязное чтение" (вы, как я понимаю, работаете именно так) и к чему оно приводит. Вам тоже посоветую почитать оную теорию. Узнать, что такое ISAM... Или Вы только по SQL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 23:49:54 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
funikovyuriНе совсем понял зачем в приведенном примере begin tran/commit, но так или иначе искренне советую перестать пороть чушь Я вот тоже не совсем понял, зачем он так писал. И искренне выгнал его. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 23:51:02 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
1024насколько я понял вы с хибернейтом не очень. Не засоряйте топик. Либо поделитесь решением вопросов производительности ... сначала почитав соответствующий раздел в документации: 19. Improving performance Кроме того, по ссылке http://www.hibernate.org/?cmd=srchdoc&q=performance можно найти приличный набор заметок по этому вопросу. Правда, там все с основном о тюнинге. Принципиальный же ответ дан выше: не устраивает Hibernate - переходите на непосредственный JDBC и хранимые процедуры. За счет времени, потраченного на соответствующее кодирование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 00:09:42 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Мои 5 копеек 1. Hibernate подоходит для проектов в которых есть хорошо формализованная модель предметной области. Если нормальной модели нет, то делать в проекте Hibernate нечего 2. Проект с использованием Hibernate должен работать не медленее, чем аналогичный, но без использования Hibernate, поскольку: 2.1 У Hibernate есть свой собственный кэш, которым можно и нужно пользоваться 2.2 Hibernate не запрещает использовать обычные SQL запросы и специфические возможность СУБД там, где это действительно нужно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 09:41:19 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
2М.Голованов с просьбой меньше трындеть я обращался не к вам, у вас вполне виден опыт работы и варианты решения возникающих проблем. Я обращался к тем балаболкам которые то не понимают что такое большой проект то про связь ооп с хмл начинают флудить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 09:45:28 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов funikovyuri То есть как неправда? В ISAM доступ к конкретной записи всегда последователен - что на чтение, что на обновление. Что можно прочитать в каждый данный момент, кроме того, что в этот момент есть в записи? Вы б почитали про уровни изоляции чтоли... А как уровни изоляции применимы к ISAM базе данных? Вы бы про ISAM почитали, что ли... Чего там читать! Indexed Sequential Access Method базовый метод для большинства СУБД и не только :) Это низкоуровневый механизм, в терминах ANSI SQL соответствует read uncommited. Уровни изоляции ANSI, которые как вы считаете неприменимы к ISAM DB, это просто один из способов классификации режимов согласованной параллельной обработки данных, основанный на упорядочивании по убыванию количества аномалий этой самой параллельной обработки. Нужно книги читать, умные, а не только документацию к MySQL PS не это провокация, честное слово :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 10:02:45 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов funikovyuriНе совсем понял зачем в приведенном примере begin tran/commit, но так или иначе искренне советую перестать пороть чушь Я вот тоже не совсем понял, зачем он так писал. И искренне выгнал его. BTW эти операторы Begin Tran/Commit там погоды не делают - ни плохо ни хорошо от них не будет, одно выражение SQL и так всегда выполняется в одной транзакции ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 10:04:29 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов ..... BEGIN TRANSACTION SELECT bla bla COMMIT ..... и спокойно жевал. Все железно и по правилам. А не тянет - берем сервак покруче... А такая конструкция очень полезна BEGIN TRANSACTION SELECT bla bla SELECT bla1 bla1 SELECT ... COMMIT если вы знаете,что такой транзакция на чтение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 10:34:14 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов funikovyuri М.ГоловановЧитается только то, что уже есть в таблицах. Это, если говорить мягко, неправда... То есть как неправда? В ISAM доступ к конкретной записи всегда последователен - что на чтение, что на обновление. Что можно прочитать в каждый данный момент, кроме того, что в этот момент есть в записи? funikovyuriХм... Иногда лучше жевать.... Вот именно. SQL транзакции позволяют беззаботно жевать. Был у меня знакомый программист... всегда писал так: Код: plaintext 1. 2. и спокойно жевал. Все железно и по правилам. А не тянет - берем сервак покруче... Мне страшно подумать,если ваша разработка связана с финансами,с бухгалтерией. Страшно подумать,что может произойти с денюжками,если использовать такой подход в финансовых/банковских системах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 11:13:31 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов 1024гугл для поисковых индексов использует MySQL например. Микрософт вполне вероятно MS SQL Трудно сказать, что они используют. Я в проектах, использующих Hibernate, всегда стараюсь использовать MyISAM таблицы MySQL. Поскольку они без транзакций, работают очень быстро. А транзакции (если вообще нужна двухфазная фиксация) и ссылочная целостность поддерживаются на уровне Hibernate / прикладного кода - там, где это надо. Опять имею разумный баланс производительности и функциональности. Вообще спор пошел на уровне "а у нас в квартире газ, а у вас?". Нет никакой абсолютной истины. Есть разумные решения в конкретных ситуациях, причем это решения, использующие все известные возможности плюс интуицию / анализ / сопрставление / комбинирование. Решения, основанные на соображениях "все делают это так" или "мне аказали, что надо делать так", в программировании редко бывают разумными. Хорошо, если вообще работающими. Ссори, по проблеме в финансовых системах корректнее процитировать это. .... Мне страшно подумать,если ваша разработка связана с финансами,с бухгалтерией. Страшно подумать,что может произойти с денюжками,если использовать такой подход в финансовых/банковских системах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 11:15:48 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
cooluserМои 5 копеек 2. Проект с использованием Hibernate должен работать не медленее, чем аналогичный, но без использования Hibernate, поскольку: 2.1 У Hibernate есть свой собственный кэш, которым можно и нужно пользоваться 2.2 Hibernate не запрещает использовать обычные SQL запросы и специфические возможность СУБД там, где это действительно нужно Второе утверждение верно без оговорок. Первое утверждение верно только при определенных условиях: а) в течение некоторого времени работы приложения доступ к записи осуществляется многократно, б) запись в течение этого времени может обновляться. В этом и только в этом случае имеет смысл держать запись в памяти (кэш - это по сути копия части содержимого БД) с выигрышем в производительности. Записи, читаемые эпизодически, держать в памяти смысла нет - мало того, что есть более быстрые способы один раз массово прочитать такие записи, так они еще будут выталкивать из кэша записи, которые там действительно имеет смысл держать (память-то не безразмерна). То же самое в точности верно для EJB 1..2 контейнеров. Поэтому когда мы писали приложения под такие контейнеры (типа WebLogic и Orion), мы всегда использовали два класса объектов, с которыми работали session beans: а) entity beans - кэшируемые записи - для текущей обработки и б) query engine (класс, поставляющий записи через JDBC и хранимые процедуры) - для исторических данных. Все летало. Hibernate позволяет в принципе до JDBC не опускаться и обойтись HQL - однако с некоторыми накладными расходами. Поэтому для исторических данных я всегда пользуюсь JDBC - как я и писал выше. Короче, если руководствоваться здравым смыслом и не заставлять Hibernate работать с записями, с которыми она работать не должна, проблем с производительностью она не доставит. Однако здравый смысл - вещь редкая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 11:22:11 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
М.Голованов Второе утверждение верно без оговорок. Первое утверждение верно только при определенных условиях: а) в течение некоторого времени работы приложения доступ к записи осуществляется многократно, б) запись в течение этого времени может обновляться. Да понятно что кэшем надо пользоваться разумно. Я просто привел факт - кэш есть, если пользоваться разумно будет хорошо. Разумность у каждого проекта своя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 14:06:13 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
dremmmmmЕсли нормализовать БД к 3 форме, и все таблицы описать в Hibernate, то это "вешалка". Наверно из-за нормализации тормазит, т.к. БД "рисуют" Java-программисты, а не БД-деволоперы. (спасибо Hibernate , о БД думать не надо). Странное высказывание, судя по моему опыту на hibernate вполне можно сделать ранее спланированную структуру БД с нужными индексами внешними ключами и т.д. Да и запросы вполне можно подкорректировать, к нужному виду. Что касается тормозов, то надо выделить конкректное узкое место, в логах посмотреть что за SQL запросы он генерит, проанализировать планы выполнения запросов. Процентов на 99 могу сказать, что проблема не в Hibernate, а в конкретном "бутылочном горлышке", возможно неправильном проектировании базы данных или неучитывании того, как работает СУБД. Как ни странно, но оказывается, что перемена мест слагаемых применительно к базам данных может играть большую роль. Покрутив запросы порой можно существенно поднять производительность. Как вариант, временно перенастроить соединение на Oracle (думаю тут все будет работать по аналогии) и потестить прогу специализированными приблудами, например как я писал несколько лет назад в статье много лет использую данную методологию для поиска этих самых бутылочных горлышек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 00:16:39 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Ух_Ты вот и докатились до аналогов FireBird ) Эй, "хуже татарина" - ну что я говорил? Уже пошли разговоры про то, как база свои данные обновляет... Хм. Ну Firebird и Firebid. Чего вы так к птичке неровно дышите? Всякому овощу - свое время. У нас вот для развертываний системы с небольшим количеством данных используется FB, а когда данных много или у заказчика особые требовария - Oracle. Часть системы вообще использует специализированую нереляционную БД (ближайший популярный аналог - BerkleyDB, только та, что используем мы, поудобнее для наших задач). Я наверное по вашей логике должен со стыда сгореть за это. Это ведь не Oracle и не MS SQL Server. Но свои нехитрые задачи (словарный поиск по простым критериям, быстрая вставка/обновление) эта недо-СУБД решает значительно более производительно, чем "взрослые" СУБД. Так и MySQL, для каких-то задач оптимальна. Ух_Ты хуже татарина Стало интересно, что такое "статические XML-контейнеры". Я не так долго работаю с Java, поэтому наверное не слышал о таком. Просветите? Ну не знаю я - туповат наверно. Для меня это - описание таблиц (которое хранится в трогательном XML), к которым предполагается применить SQL. Для дальнейшего изменения данных. А Вы разве не работали с Hibernate? Да, я использовал и использую Hibernate 2/3. Насчет вопроса, я тогда правда не понял, что такое эти "статические контейнеры" . Теперь мне понятно, что вы так файлы конфигурации H. называете ("маппинги"). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 01:04:29 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Siarhei Berdachuk Процентов на 99 могу сказать, что проблема не в Hibernate, а в конкретном "бутылочном горлышке", возможно неправильном проектировании базы данных или неучитывании того, как работает СУБД. +1. Если что-то тормозит, надо измерять производительность. Инженерный подход к разработке ПО рулит. Когда что-то тормозит, надо узнать, что тормозит, и как правило проблему можно решить, это путь инженера, а можно заявить, что конкретно вот из-за Hibernate все беды и надо её выкинуть и все заработает. Это может сработать иногда, но подход отдает шаманством. Есть хорошие профайлеры для Java и средства измерения производительности SQL запросов. В Hibernate всегда можно включить вывод SQL, отправляемого в СУБД в лог. Можно смотреть планы выполнения, и, если что не так, лечить. Забыть SQL и принципы оптимизации запросов к БД, используя Hibernate не получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 01:14:15 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Siarhei Berdachuk.... Что касается тормозов, то надо выделить конкректное узкое место, в логах посмотреть что за SQL запросы он генерит, проанализировать планы выполнения запросов. .... . А какой смысл тогда использовать hibernate,если все равно надо лезть и анализировать запросы,который он генерит(наверняка еще целую кучу ненужных запросов) и затем их оптимизировать сложным образом настраивая hibernate, что бы ОН ВЫДАЛ нормальный запрос. Все проще написать сразу самому нормальный запрос SQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 10:40:44 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java - devА какой смысл тогда использовать hibernate,если все равно надо лезть и анализировать запросы,который он генерит(наверняка еще целую кучу ненужных запросов) и затем их оптимизировать сложным образом настраивая hibernate, что бы ОН ВЫДАЛ нормальный запрос. Все проще написать сразу самому нормальный запрос SQL. Hibernate, как дополнительный уровень абстракции, не может знать всех нюансов использования конкретной СУБД. И это разумная плата за универсальность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 11:09:18 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java - dev А какой смысл тогда использовать hibernate,если все равно надо лезть и анализировать запросы,который он генерит(наверняка еще целую кучу ненужных запросов) Если Вы не знаете что hibernate наверняка генерит, то может быть Вам пока не стоит его использовать в серьезных проектах Java - devи затем их оптимизировать сложным образом настраивая hibernate, что бы ОН ВЫДАЛ нормальный запрос. Все проще написать сразу самому нормальный запрос SQL. Проще, 100 запросов, 1000, 10000, а потом проще такое приложение поддерживать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 11:11:07 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
mayton Java - devА какой смысл тогда использовать hibernate,если все равно надо лезть и анализировать запросы,который он генерит(наверняка еще целую кучу ненужных запросов) и затем их оптимизировать сложным образом настраивая hibernate, что бы ОН ВЫДАЛ нормальный запрос. Все проще написать сразу самому нормальный запрос SQL. Hibernate, как дополнительный уровень абстракции, не может знать всех нюансов использования конкретной СУБД. И это разумная плата за универсальность. Универсальность для чего? Что бы я заплатил за Oracle бешеные бабки и не использовал всех его возможностей,разрабатывая так,что бы мое приложение еще имело призрачную возможность работы с MySQL или еще с чем-либо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 11:12:03 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
J Dev Java - dev А какой смысл тогда использовать hibernate,если все равно надо лезть и анализировать запросы,который он генерит(наверняка еще целую кучу ненужных запросов) Если Вы не знаете что hibernate наверняка генерит, то может быть Вам пока не стоит его использовать в серьезных проектах Java - devи затем их оптимизировать сложным образом настраивая hibernate, что бы ОН ВЫДАЛ нормальный запрос. Все проще написать сразу самому нормальный запрос SQL. Проще, 100 запросов, 1000, 10000, а потом проще такое приложение поддерживать 10000 - это уже похоже на HIBERNATE:-)) Столько он в состоянии нагенерить наодин клик мыши:-)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 11:15:36 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java - dev[ 10000 - это уже похоже на HIBERNATE:-)) Столько он в состоянии нагенерить наодин клик мыши:-)) Не спорю, в состоянии:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 11:28:28 |
|
||
|
Кто использует Hibernate в БОЛЬШИХ проекта
|
|||
|---|---|---|---|
|
#18+
Java - devЧто бы я заплатил за Oracle бешеные бабки и не использовал всех его возможностей,разрабатывая так,что бы мое приложение еще имело призрачную возможность работы с MySQL или еще с чем-либо. Полистал документацию по Hibernate и наткнулся на следующую табличку. Hibernate SQL Dialect RDBMSDialectOracle (any version)org.hibernate.dialect.OracleDialectOracle 9i/10gorg.hibernate.dialect.Oracle9Dialect...... В принципе не так уж все плохо. Надеюсь, что ваши инвестиции в Oracle не пропадут зря Но это не избавит вас от использования OTP, ODDP на стороне сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 11:30:12 |
|
||
|
|

start [/forum/topic.php?all=1&fid=59&tid=2147367]: |
0ms |
get settings: |
6ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
199ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
209ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 648ms |

| 0 / 0 |
