Size: a a a

2020 June 08

MB

Mikhail Bobrutskov in pro.jvm
Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶
Это сильно повлияет на результаты
бенчмарк на чтение данных, зачем для этого транзакции?
источник

MB

Mikhail Bobrutskov in pro.jvm
Denis Pavlyuchenko
транзакции требуют какой-то стейт, что заставляет их прибивать к коннекту. В результате, условный r2dbc рабоатет хорошо для запросов, когда мы можем шарить коннект (так как через один коннект к PG у нас шлется несколько запросов), но все становится не так радужно, если у нас поялвются транзакции, и нам уже надо колилчество коннектов по количеству активных транзакций (а в PG мы не хотим иметь миллион коннектов, из-за 1 коннект = 1 процесс).

Но может быть я что-то упускаю, и буду рад, если меня поправят
ну раньше как-то жили с пулом коннектов и было ок..
источник

DP

Denis Pavlyuchenko in pro.jvm
Mikhail Bobrutskov
ну раньше как-то жили с пулом коннектов и было ок..
сорри, может быть, я неверно выразился. Речь идет про одновременное использование коннекта для нескольких запросов.
источник

MB

Mikhail Bobrutskov in pro.jvm
я понял, транзакции будут блокировать этот неблокирующий коннект для других запросов, и система даунгрейдится до простого пула коннектов
источник

MB

Mikhail Bobrutskov in pro.jvm
со стороны базы нет каких-то неблокиующих протоколов?
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Mikhail Bobrutskov
бенчмарк на чтение данных, зачем для этого транзакции?
Ну поэтому и хочется что-то более похожее на реальную oltp нагрузку
источник

MB

Mikhail Bobrutskov in pro.jvm
я просто пару лет стою в сторонке и не понимаю этой шумихи вокруг реактивных драйверов к бк
источник

DP

Denis Pavlyuchenko in pro.jvm
Mikhail Bobrutskov
со стороны базы нет каких-то неблокиующих протоколов?
я буду рад, если что-то упускаю, но, кажется, у постгреса нет асинхронного API с поддержкой транзакций
источник

D

Dima in pro.jvm
а давайте спросим у одного из причастных
источник

D

Dima in pro.jvm
Denis Pavlyuchenko
транзакции требуют какой-то стейт, что заставляет их прибивать к коннекту. В результате, условный r2dbc рабоатет хорошо для запросов, когда мы можем шарить коннект (так как через один коннект к PG у нас шлется несколько запросов), но все становится не так радужно, если у нас поялвются транзакции, и нам уже надо колилчество коннектов по количеству активных транзакций (а в PG мы не хотим иметь миллион коннектов, из-за 1 коннект = 1 процесс).

Но может быть я что-то упускаю, и буду рад, если меня поправят
@bsideup Сергей, мы правильно понимаем, что при использовании транзакций, не получится 1 коннекшен на несколько транзакций переиспользовать?
источник

SE

Sergei Egorov in pro.jvm
Dima
@bsideup Сергей, мы правильно понимаем, что при использовании транзакций, не получится 1 коннекшен на несколько транзакций переиспользовать?
я не особо причастный, но, из обсуждений что я слышал, всё равно, если БД не позволяет переиспользовать соединение для транзакций (transactional pipelining?), то r2dbc тут ничего сделать не сумеет (как и любой другой драйвер) и соединение будет эксклюзивно для транзакции использоваться. При этом потоки не будут заблокированы, конечно же
источник

SE

Sergei Egorov in pro.jvm
для нетранзакционных запросов, соединения очень эффективно переиспользуются (если протокол базы позволяет)
источник

IK

Ivan Korotkii in pro.jvm
В чем могут быть причины того, что при работе в idea два раза поднимается сервер томката?
источник

YJ

Yo Jla in pro.jvm
Ivan Korotkii
В чем могут быть причины того, что при работе в idea два раза поднимается сервер томката?
Порт(ы) два раза занимает? Или два раза пишет лог?
источник

IK

Ivan Korotkii in pro.jvm
ну по факту я это вижу из-за того, что два раза запросы исполняются при старте приложения создание базы etc
источник

YJ

Yo Jla in pro.jvm
Ivan Korotkii
ну по факту я это вижу из-за того, что два раза запросы исполняются при старте приложения создание базы etc
Второй раз он порты занять не сможет... так что вы ошибку должны бы увидеть.
источник

IK

Ivan Korotkii in pro.jvm
Yo Jla
Второй раз он порты занять не сможет... так что вы ошибку должны бы увидеть.
не знаю, но в логах почему-то два раза запросы выполняются
возможно два раза спринг создает бины
но repository и service бины же сингелтоны?
источник

YJ

Yo Jla in pro.jvm
Ivan Korotkii
не знаю, но в логах почему-то два раза запросы выполняются
возможно два раза спринг создает бины
но repository и service бины же сингелтоны?
Возможно скорее всего именно логи пишуться два раза, а вообще то раборает по одному рззу.
additivity=false
есть такой параметер в конфигах logback/log4j/...
источник

IK

Ivan Korotkii in pro.jvm
уфф как такое вообще возможно?
источник

IK

Ivan Korotkii in pro.jvm
там время сильно разное (т е сомневаюсь что это вообще из одного потока отрабтало)
источник