R2DBC如何实现事务处理。
据我所知,JDBC对一个事务使用一个连接。因此,在SpringMVC中,我们有以下映射:1个请求:1个线程:1个事务:1个连接。
使用R2DBC的Webflux中的映射是什么?Webflux是被动的,所以当我们打开一个事务时,它会使用一个连接直到事务结束吗?如果是这样,那么事务就有点像阻塞操作,因为当事务处于活动状态时,没有其他事务可以重用SpringWebflux中的连接。
假设我们在R2DBC中定义了10个连接,10个Webflux请求打开了10个长事务。以下所有Webflux请求是否都会等待这10个事务中的一个事务的结束,或者多个Webflux(带事务(请求是否可以并行使用一个连接?
R2DBC每个连接只支持一个事务。据我所知,主要原因是许多数据库系统每个连接只支持一个事务,因此不可能在单个连接上多路复用事务。