|
ORM vs sql
|
|||
---|---|---|---|
#18+
SeVa, ответь по той ссылке вверху. Ухожу :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 16:46 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
SeVaPetro123Lelouch, Начало сессии - 1 запрос = в Java создался класс Session. Он как раз для корзин покупателя и т.д. Туда можно ложить то, что сохранить между запросами. Везде читаю, что хибер-сессию надо закрыть на конец запроса. Т.е. даже если положим туда, то он при закрытии сбросит в БД и зафиксирует запрос 1. Ваши ORM - путь в никуда И SQL - лишь остановка на этом пути ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 16:53 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
SeVa...Ваши ORM - путь в никуда И наши. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 17:00 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Petro123Алексей К, покопаю, но это вроде равноценно что открыть в синглетоне на все потоки? Там контейнер для массовости запускает Java класс в потоках. Поэтому хибер пишут надо в старте потока\реквест открыть и в конце\реквест закрыть . Замкнутый круг. 2 транзакции и 2 сессии ХИБЕРА тогда могут пересечься."Надо" и "можно" - разные вещи. :-) Просто пишут про наиболее распространённый сценарий. Если хибер позволяет обращаться к сессии последовательно из разных потоков (т. е. в один момент времени с сессией работает только один поток) - вроде должно получиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 17:01 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Petro123т.е. туда можно ложить чисто данные, потом доставать и типа мержить и ложить в ОРМ обратно. Неудобно. Нет. Никаких данных и БД нет. А есть бизнес-объекты. Person.Load()->Person.Address.Load()-> Редактируем -> Person.Serialize() -> Сохранить в кэше -> Переход на другую страницу -> Достаем из кэша -> Person.Deserialize() -> Person.Comments.Load() -> Редактируем -> Person.Save() (все упало в БД) или Person.Undo(). Второй вариант - хранить diffgram'ы, по которым можно сделать все необходимые телодвижения. Чтобы сделать все единообразным я бы использовал паттерн репозиторий, это позволит абстрагироваться от деталей ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 17:01 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Ну и не забыть организовать синхронизацию при работе с самим Dictionary. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 17:02 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
SeVaНет. Никаких данных и БД нет. А есть бизнес-объекты. Person.Load()->Person.Address.Load()-> Редактируем -> Person.Serialize() -> Сохранить в кэше -> Переход на другую страницу -> Достаем из кэша -> Person.Deserialize() -> Person.Comments.Load() -> Редактируем -> Person.Save() (все упало в БД) или Person.Undo(). Второй вариант - хранить diffgram'ы, по которым можно сделать все необходимые телодвижения. Чтобы сделать все единообразным я бы использовал паттерн репозиторий, это позволит абстрагироваться от деталейЭто всё понятно. Есть 100500 способов организации кэша. Хибер - один из них. Вопрос - как организовать доступ к кэшу из разных HTTP-реквестов. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 17:04 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Алексей КSeVaНет. Никаких данных и БД нет. А есть бизнес-объекты. Person.Load()->Person.Address.Load()-> Редактируем -> Person.Serialize() -> Сохранить в кэше -> Переход на другую страницу -> Достаем из кэша -> Person.Deserialize() -> Person.Comments.Load() -> Редактируем -> Person.Save() (все упало в БД) или Person.Undo(). Второй вариант - хранить diffgram'ы, по которым можно сделать все необходимые телодвижения. Чтобы сделать все единообразным я бы использовал паттерн репозиторий, это позволит абстрагироваться от деталейЭто всё понятно. Есть 100500 способов организации кэша. Хибер - один из них. Вопрос - как организовать доступ к кэшу из разных HTTP-реквестов. Я не спец в этой web'ской полове, но сессии с нужной идентификацией - это не проблема. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 17:13 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Похоже, для господ джавистов составные БО - полное откровение. Если его нет, то есть еще вариант - CQRS & Event Sourcing. Описывать полностью не буду, большие подозрения, что это будет таже серия ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 17:17 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Petro123Алексей КЧто мешает накопить данные на клиенте и отправить их в одной транзакции в конце работы мастера? - накопить как? В клиенте в куки? Сессия? Вьюстейт? Табличка БД с привязкой по гуиду? window.localStorage? window.sessionStorage? Куки? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 19:13 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Вполне можно на самой страничке накопить. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 19:17 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Petro123Нужна бизнес-сессия для длинной бизнес-транзакции (шире одного реквеста). Для длительных операций - асинхронно отправляем транзакцию на сервер и возвращаем страницу: http://api.jquery.com/jQuery.ajax/ asyncBoolean Default: true By default, all requests are sent asynchronously (i.e. this is set to true by default). If you need synchronous requests, set this option to false. Cross-domain requests and dataType: "jsonp" requests do not support synchronous operation. Note that synchronous requests may temporarily lock the browser, disabling any actions while the request is active. В чём сложность? Petro123 Ормы заточены на один реквест - пришли парам, сделал HTML, выплюнул и ЗАБЫЛ. Так мог сказать только дегенерат, который не понимает, что ORM и реквест - монописуально-фиолетово-некоррелируемые вещи. Еще раз в закрепление - мастера и прочая шелуха в вебе реализуется за два чиха. Проблема, раздутая на пустом месте с пузырями и откровенными глупостями. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 19:20 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
ShSergeВполне можно на самой страничке накопить. +1 Я вообще не понял проблемы. Petro123 городит какую-то хрень :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 19:21 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
МСУ, Не говори так. Человек, по моей подсказке, из явы (там вообще только один форум, почему-то. Не могу понять почему так сделано) отпостил сюда. А Вы сразу - про какую-то хрень. Сами хрень никогда не писали? Может ли кто похвастаться таким богатым количеством банов, как Вы? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 19:35 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Лучше написать в форум Asp.Net. Тут вопрос скорее по web чем про ОРМ. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 19:38 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Алексей КЛучше написать в форум Asp.Net. Тут вопрос скорее по web чем про ОРМ. Это почему? И на вэбе и не на вэбе можно писать как на ОРМ, так и не на ОРМ. Вы не знали этого? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 19:58 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
МСУ, Я не в обиде.:) Сессия хибера на реквест. Так у него в доке. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 21:43 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
Petro123МСУ, Я не в обиде.:) Это радует :) Petro123Сессия хибера на реквест. Так у него в доке. 1. А что если у нас не сайт? Десктоп, безсессионный веб-сервис. Откуда браться сессии? 2. А что, если я сессию в ASP.NET сайте положу в Cache или в Application? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 22:00 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
3. Так или иначе, что конкретно мешает сделать мастер или что там у Вас? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 22:01 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
МСУ, я добрался до компа - счас быстро на всё отвечу. - я с десктопа пришёл. Там есть Уровень изоляции, которого в ОРМ нету. Как быть? - вопрос Очень конкретный из ТЗ по ссылке. Не хочется заказчика посылать по дальше, т.к. надо учесть веб-http ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 22:36 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
МСУ3. Так или иначе, что конкретно мешает сделать мастер или что там у Вас? нет - у вас тут есть портированный хибер = NHibernate? - я предпологаю, что методы схожи - как вы делаете длинные транзакции. На Java их очень не любят и открещиваются ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 22:37 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
МСУ, если у ОРМ есть 2 кэша, то можно ли выключить синхронизацию его и сделать "снимок". Т.е. писать в него CRUD а потом разом на 5 реквест либо в БД либо стереть с доски? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 22:39 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
в Java нижний уровень прихода POST это - аппсервер на 80 порту - получил запрос - если их много, то В ПОТОКЕ запускает сервлет (Java код) - там в начале Хибер.Опен и в конце Хибер.Сессия.Закрыть Как это у Вас? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 22:42 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
МСУОткуда браться сессии? это сессия Хибера, а не HTTP. Я тоже был злой что они назвали одинаково :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 22:43 |
|
ORM vs sql
|
|||
---|---|---|---|
#18+
МСУДля длительных операций - асинхронно отправляем транзакцию на сервер и возвращаем страницу: http://api.jquery.com/jQuery.ajax/ да. у меня на сайте это так и работает ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2012, 22:45 |
|
|
start [/forum/topic.php?fid=17&msg=37615383&tid=1350478]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 306ms |
total: | 458ms |
0 / 0 |