laravel5.4使用laravel-excel包导入数据,队列被killed

发布于 2022-09-06 01:45:24 字数 1885 浏览 27 评论 0

excel文件大小为:2.7M;

总行数:15000行

config(['excel.import.startRow' => 6 ]);
        config(['excel.import.heading' => 'numeric' ]);

        Excel::selectSheetsByIndex(0)->filter('chunk')->load($qlrFile)->chunk(1000,function($result) {
            //qlr写入数据库 50行 空7行
            $data=[];
            $resultArr = $result->toArray();
            foreach ($resultArr as $key=>$item){
                if(!empty($item[7]) && is_numeric($item[7])){
                    $data[$key]['id'] = $key+1;
                    $data[$key]['arnr']=$item[0];
                    $data[$key]['buyer']=$item[1];
                    $data[$key]['customer_id']=$item[3];
                    $data[$key]['profil']=$item[5];
                    $data[$key]['customer_name']=$item[6];
                    $data[$key]['order_nr']=$item[7];
                    $data[$key]['line_id']=$item[8];
                    $data[$key]['cust_po_nr']=$item[9];
                    $data[$key]['cust_item_nr']=$item[10];
                    $data[$key]['qty']=$item[14];
                    $data[$key]['ngsp']=implode('',explode(',',number_format($item[15],2)));
                    $data[$key]['sales_person']=$item[16];
                    $data[$key]['order_type']=$item[18];
                    $data[$key]['wh_id']=$item[20];
                    $data[$key]['subline_status']=$item[22];
                    $data[$key]['created_at']=Carbon::now();
                    $data[$key]['updated_at']=Carbon::now();
                }
            }
            $orderInfo = DB::table('orders_qlr')->insert($data);
        });

队列:php artisan queue:work --queue=high,low --timeout=590 --memory=1024

phpinfo:memory_limit:128M

当导入8,9千条数据的时候队列就会被killed;

我有另一张也是15000行数据的excel,文件大小在1.7M;能够全部导入写入库中;

上面稍大些的文件就会被killed;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

哥,最终变帅啦 2022-09-13 01:45:24

是的,是内存不足。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文