异步批量导出数据测试报告

测试环境:laravel5.8 基于Maatwebsite\Excel 导出excel表格
通过控制器直接导出测试注意事项:
需要考虑执行php配置的响应时间 可占用内存上限制
经过测试:最大执行时间默认30会操作超时 最大可用内存512时,会报内存溢出。
我的配置:修改php.ini
max_execution_time = 100
memory_limit = 1024M

可完成:
普通varchar类型数据 (varchar20-45均有)5列 可一次性导出10W条

接下来基于laravel的queue队列执行测试导出数据:
默认的队列监听会 内存溢出: 需要关键性的配置一下可操作内存 根据以上测试 这里我直接测试1024M
php artisan queue:work --delay=10 --memory=1024 --sleep=3 --tries=3 --queue=default
测试如下:
5列 一次性导出10W条 排队记录6 可操作执行完成

接下来我改变数据表数据结构:把数据增加到26列
一次性导出:
10W条 内存溢出
5W条 内存溢出
2.5W条 进行到第二条后出现了阻塞情况 此数据量已超负荷
2W条 进行到第二条后出现了阻塞情况 此数据量已超负荷
1.5W条 测试顺利执行

说明

改测试仅供诸位路过者参照,根据电脑的硬件配置不同,操作系统不同,系统环境,数据库填充不同,是想方式不同,场景逻辑不同,语言间接性不同,业务不同,等等各种差异性,大家得到结论都不一样,希望能提供参考帮助。

以上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

溜达的大象

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值