MyBatis 批量插入几千条数据,请慎用 foreach
Java

MyBatis 批量插入几千条数据,请慎用 foreach

43 0

近日,项目中有一个耗时较长的Job存在CPU占用过高的问题,经排查发现,主要时间消耗在往MyBatis中批量插入数据。mapper configuration是用foreach循环做的,差不多是这样。(由于项目保密,以下代码均为自己手写的demo代码)insertid=batchInsertpara...

阅读全文
分布式事务最经典的 7 种解决方案,一文彻底搞懂!!
Java

分布式事务最经典的 7 种解决方案,一文彻底搞懂!!

59 0

随着业务的快速发展、业务复杂度越来越高,几乎每个公司的系统都会从单体走向分布式,特别是转向微服务架构。随之而来就必然遇到分布式事务这个难题,这篇文章总结了分布式事务最经典的解决方案,分享给大家。基础理论在讲解具体方案之前,我们先了解一下分布式事务所涉及到的基础理论知识。我们拿转账作为例子,A需要转1...

阅读全文
【109期】面试官问:说说 MyBatis 和 Hibernate JPA,哪个性能更佳?
Java

【109期】面试官问:说说 MyBatis 和 Hibernate JPA,哪个性能更佳?

37 0

前言由于编程思想与数据库的设计模式不同,生出了一些ORM框架。核心都是将关系型数据库和数据转成对象型。当前流行的方案有Hibernate与myBatis。两者各有优劣。竞争激烈,其中一个比较重要的考虑的地方就是性能。因此笔者通过各种实验,测出两个在相同情景下的性能相关的指数,供大家参考。测试目标以下...

阅读全文
【106期】面试官问:Java 多线程如何实现批量拆分 List 导入数据库?
Java

【106期】面试官问:Java 多线程如何实现批量拆分 List 导入数据库?

50 0

一、前言前两天做了一个导入的功能,导入开始的时候非常慢,导入2w条数据要1分多钟,后来一点一点的优化,从直接把list怼进Mysql中,到分配把list导入Mysql中,到多线程把list导入Mysql中。时间是一点一点的变少了。非常的爽,最后变成了10s以内。下面就展示一下过程。二、直接把list...

阅读全文