110 lines
3.4 KiB
PHP
110 lines
3.4 KiB
PHP
<?php
|
|
|
|
namespace App\Console\Commands;
|
|
|
|
use App\Jobs\UpdateMassive1Job;
|
|
use App\Jobs\UpdateMassive2Job;
|
|
use App\Jobs\UpdateMassive3Job;
|
|
use App\Jobs\UpdateMassive4Job;
|
|
use App\Jobs\UpdateMassive5Job;
|
|
use Illuminate\Console\Command;
|
|
use Illuminate\Support\Facades\Bus;
|
|
|
|
class UpdateMassiveCommand extends Command
|
|
{
|
|
/**
|
|
* The name and signature of the console command.
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $signature = 'app:update-massive-command';
|
|
|
|
/**
|
|
* The console command description.
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $description = 'Command description';
|
|
|
|
/**
|
|
* Execute the console command.
|
|
*/
|
|
public function handle()
|
|
{
|
|
Bus::chain([
|
|
/**
|
|
* Atualiza o campo data e valor, uma transação por vez.
|
|
* Atualizando de forma unitária com where('id', 1), where('id', 2).
|
|
*
|
|
* 1000 - App\Jobs\UpdateMassive1Job .......... 1s DONE
|
|
* 10000 - App\Jobs\UpdateMassive1Job .......... 14s DONE
|
|
* 100000 - App\Jobs\UpdateMassive1Job ....... 2m 36s DONE
|
|
* 1000000 - App\Jobs\UpdateMassive1Job ...... 26m 10s DONE
|
|
*/
|
|
new UpdateMassive1Job(),
|
|
|
|
/**
|
|
* Atualiza o campo data e valor, mas passando todos os ids das transações,
|
|
* Atualizando com where id in(1,2,3...).
|
|
*
|
|
* 1000 - App\Jobs\UpdateMassive2Job ...... 19.87ms DONE
|
|
* 10000 - App\Jobs\UpdateMassive2Job ..... 149.19ms DONE
|
|
* 100000 - App\Jobs\UpdateMassive2Job ........... 1s DONE
|
|
* 1000000 - App\Jobs\UpdateMassive2Job .......... 15s DONE
|
|
*/
|
|
new UpdateMassive2Job(),
|
|
|
|
/**
|
|
* Atualiza o campo data e valor, mas o campo data será preenchido com um valor diferente para cada transação,
|
|
* Atualizando de forma unitária com where('id', 1), where('id', 2).
|
|
*
|
|
* 1000 - App\Jobs\UpdateMassive3Job ........... 1s DONE
|
|
* 10000 - App\Jobs\UpdateMassive3Job .......... 14s DONE
|
|
* 100000 - App\Jobs\UpdateMassive3Job ....... 2m 44s DONE
|
|
* 1000000 - App\Jobs\UpdateMassive3Job ...... 27m 10s DONE
|
|
*/
|
|
new UpdateMassive3Job(),
|
|
|
|
/**
|
|
* Atualiza o campo data e valor, mas o campo data será preenchido com um valor diferente para cada transação,
|
|
* Atualizando de forma multipla com UpdateMassive
|
|
*
|
|
* 1000 - App\Jobs\UpdateMassive4Job ..... 85.32ms DONE
|
|
* 10000 - App\Jobs\UpdateMassive4Job .... 737.00ms DONE
|
|
* 100000 - App\Jobs\UpdateMassive4Job .......... 8s DONE
|
|
* 1000000 - App\Jobs\UpdateMassive4Job ...... 1m 15s DONE
|
|
*/
|
|
new UpdateMassive4Job(),
|
|
|
|
/**
|
|
* Atualiza o campo data e valor, mas o campo data será preenchido com um valor diferente para cada transação,
|
|
* Atualizando de forma multipla com UpdateMassive2
|
|
*
|
|
* 1000 - App\Jobs\UpdateMassive5Job ..... 64.16ms DONE
|
|
* 10000 - App\Jobs\UpdateMassive5Job .... 590.20ms DONE
|
|
* 100000 - App\Jobs\UpdateMassive5Job .......... 7s DONE
|
|
* 1000000 - App\Jobs\UpdateMassive5Job ......... 58s DONE
|
|
*/
|
|
new UpdateMassive5Job(),
|
|
])->dispatch();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|