在使用Laravel eloquent将大约25万条记录插入到MySQL数据库中时,我遇到了一个PHP执行时间错误.考虑到以下限制,我的目标是在不增加总体执行时间的情况下实现这一点:
- Frontend:Angular
- Multi-tenancy:使用以下工具实施 https://tenancyforlaravel.com/个
- Attempted solutions:拉威尔球杆
以下是我的代码.
作业(job)档案编码-
class MedicineData implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels, Batchable;
public $data;
public function __construct($data)
{
$this->data = $data;
}
public function handle(): void
{
foreach ($this->data as $key => $value) {
$medicine = new MedicineName();
$medicine->name = $value['name'];
$medicine->save();
}
}
}
控制员档案编码
$chunks = array_chunk($data, 500);
$batch = Bus::batch([])->dispatch();
foreach ($chunks as $key => $value) {
$batch->add(new MedicineData($value));
}
我得到一个错误的最大PHP执行时间.如何解决这个问题.