我有一个长时间运行的微线程,它运行了20个小时,在任务完成后,由于mysql连接关闭,我在Spring batch中遇到错误。com.mysql.cj.jdbc.exceptions.CommunicationsException: The last packet successfully received from the:167)
在下面的场景中,我看到了MySQL DB的磁盘i/o问题:22个线程同时写入分开的表
每次写入都是使用INSERT INTO .值.我读到对于MySQL数据目录,这是不必要的,所以我重新分区了磁盘,将MySQL数据目录移到了新分区,关闭了这个新分区的日志记录,并重新启动了系统。这导致了一个改进,即22个线程能够在没有i/o等待的情况下完成,并且不会在关闭表上被卡住,但只停留一段时间,而此时所有线程都再