相互交错的长期数据库事务的性能损失是多少?

时间:2018-08-01 15:17:44

标签: performance jpa transactions

任何人都可以提供一个解释或指向我一个好的来源,在其中解释当涉及其他事务时,长期数据库事务的影响吗?

我很难理解具有不同隔离级别的事务的应用程序的性能的真正影响,在事务处理中,大多数查询是读取的,可能是两三个查询的写入。

在以下情况下,我最想了解它:

  • 读取的行和更新的行均不参与任何其他事务。
  • 读取的行涉及另一个事务,但不涉及要更新的行,并且该另一个事务是只读的。
  • 读取的行涉及另一个事务,但不涉及正在更新的行,并且此另一个事务正在修改一些正在读取的数据。我知道在这里它还会影响在修改数据之前或之后读取数据。
  • 读取的行和更新的行都涉及另一个事务,该事务也修改了数据。

这些问题来自使用微服务的应用程序上下文,其中所有应用程序层服务均使用@TransactionalJPA标注PostgreSQL,并且要转换数据,需要对交易中的其他微服务进行一些网络调用以获取其他值。

0 个答案:

没有答案