|
|
|
Spring transactional + Hibernate optimistic lock
|
|||
|---|---|---|---|
|
#18+
Доброе время суток! В Spring @Transactional можно уcтановить уровень изолированности транзакций: - например isolation = Isolation.READ_COMMITTED. В БД также можно настроить уровень изолированности транзакций. В MySql под дефолту REPEATABLE READ. Вопрос какой уровень изолированности будет принят - тот, что настроен с помощью spring в методе сервиса @Transactional(isolation = Isolation.READ_COMMITTED etc)??? или настройка на уровне БД (REPEATABLE READ)??? В Hibernate можно настроить optimistic lock с помощью @Version. на каких уровнях изолированности транзакций(READ COMMITTED, REPEATABLE READ etc.) целесообразно применять Hibernate optimistic lock? Есть смысл в применять Hibernate optimistic lock для REPEATABLE READ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2015, 23:47 |
|
||
|
Spring transactional + Hibernate optimistic lock
|
|||
|---|---|---|---|
|
#18+
bob8, Поиск ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2015, 08:20 |
|
||
|
Spring transactional + Hibernate optimistic lock
|
|||
|---|---|---|---|
|
#18+
bob8 Вопрос какой уровень изолированности будет принят - Если база поддерживает уровень изоляции, который установлен в спринге, то он и будет использоваться, если не поддерживается - то хз, наверное дефолтный БД. bob8 Есть смысл в применять Hibernate optimistic lock для REPEATABLE READ? Странный вопрос как по мне, вы точно разобрались что такое оптимистик лок? В любом случае это зависит от ТЗ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2015, 12:12 |
|
||
|
Spring transactional + Hibernate optimistic lock
|
|||
|---|---|---|---|
|
#18+
забыл никСтранный вопрос как по мне, вы точно разобрались что такое оптимистик лок? В любом случае это зависит от ТЗ Насколько я понимаю, то оптимистик лок применяется на уровнях (READ UNCOMMITTED, READ COMMITTED), там где транзакции могут "увидеть" друг друга. Но возможно есть "странное" поведение hibernate при оптимистик локах? собственно по этому поводу и был задан вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2015, 14:15 |
|
||
|
Spring transactional + Hibernate optimistic lock
|
|||
|---|---|---|---|
|
#18+
bob8Но возможно есть "странное" поведение hibernate при оптимистик локах? а вы не трогайте БД и её уровень по умолчанию. Вам свободно хватит реализации блокировки хибера в его справке. Пробуйте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2015, 14:52 |
|
||
|
Spring transactional + Hibernate optimistic lock
|
|||
|---|---|---|---|
|
#18+
bob8Насколько я понимаю, то оптимистик лок применяется на уровнях (READ UNCOMMITTED, READ COMMITTED), там где транзакции могут "увидеть" друг друга. Оптимистик лок применяется не к уровням а к бизнес логике. Уровни изоляции ортогональны к оптимистик локам. Если по задаче у вас есть возмоность столкновения транзакций, но достаточно редкая, то используем, если вероятность высока и это может застопорить работы приложения - выбираем пессимистик. Уровень изоляции же выбирается в зависимости от того насколько непротиворечивые данные должен увидеть пользователь по бизнес-правилам. bob8Но возможно есть "странное" поведение hibernate при оптимистик локах? собственно по этому поводу и был задан вопрос. Концепция оптимистик локов очень проста, это даже не локи в традиионном понимании. Выбираем запись, с пометкой в поле, при сохранении указываемм ее в условии для update - сработало - значит никто не трогал, и тд. Какие странности тут могут быть? Поэтому я и не уверен что вы уверенно владеете этим понятием. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2015, 15:18 |
|
||
|
Spring transactional + Hibernate optimistic lock
|
|||
|---|---|---|---|
|
#18+
забыл никЕсли по задаче у вас есть возмоность столкновения транзакций, но достаточно редкая, то используем, если вероятность высока и это может застопорить работы приложения - выбираем пессимистик. Возможно я не все понимаю. а что при REPEATABLE READ возможны столкновения транзакций? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2015, 18:34 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38907462&tid=2125679]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
136ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 395ms |

| 0 / 0 |
