R2DBC如何实现事务处理。
据我所知,JDBC对一个事务使用一个连接。因此在Spring MVC中,我们有以下映射:1个请求:1个线程:1个事务:1个连接。
Webflux与R2DBC之间的映射是什么?Webflux是反应性的,所以当我们打开一个事务时,它是否使用一个连接直到事务结束?如果是这样,那么事务就类似于阻塞操作,因为当事务处于活动状态时,没有其他事务可以重用Spring Webflux中的连接。
假设我们在R2DBC中定义了10个连接,10个Webflux请求打开了10个长事务。以下所有Webflux请求是否都会等待这10个事务中的一个事务结束,或者多个Webflux请求(带有事务)是否可以并行使用单个连接?
发布于 2020-11-07 23:01:03
R2DBC仅支持每个连接的单个事务。据我所知,主要原因是许多数据库系统在每个连接上只支持单个事务,因此在单个连接上多路复用事务是不可能的。
https://stackoverflow.com/questions/64729022
复制相似问题