mysql执行许多导入时,http请求“等待”时间增加

使用Laravel,我已经设置了一些cronjobs(通过调度程序)来运行导入脚本的多个实例,该实例将从API收集数据到MariaDB关系数据库中。我已经运行了大约20个实例,因此每秒大约同时完成20个导入。

当这些文件运行时,网页(http / s请求)的响应速度要慢得多。用pingdom的网站速度测试进行测试,区别在于主页文档的“等待”时间长达3000毫秒。一旦我停止导入数据,等待时间仅为300毫秒左右。

查看运行导入时的服务器使用情况(与未运行时相比),我发现CPU使用率或内存使用率没有明显差异。无论导入脚本如何,CPU大约占3-30%,RAM使用仅高出2GB(服务器通常使用30GB / 48GB的RAM)。一切看起来都很好。

我正在考虑哪些瓶颈在考虑服务器使用是否有足够的操作空间-可能是表锁定?

为了让这些导入继续进行而又不减慢站点速度,我有什么选择?

在Linux Ubuntu上运行NGINX。

评论