У меня есть настройки на .env mail вроде этого:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=******@gmail.com
MAIL_PASSWORD=******
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=null
MAIL_FROM_NAME="${APP_NAME}"
Затем у меня есть класс Sendemail, который расширяет почтовые сообщения следующим образом:
class Sendemail extends Mailable implements ShouldQueue
{
use Queueable, SerializesModels;
public function build()
{
return
$this->from('*****@gmail.com')->subject('Penugasan')->view('Email/mail')->with('data',
$this->data);
}
}
Вот представление Email / mail:
<p>Dengan Hormat,</p><br>
<p>Nama : {{ $data['nama'] }}</p><br>
<p>NIP : {{ $data['nip'] }}</p><br>
<p>Pangkat/Golongan : {{ $data['pangkat'] }}</p><br>
Контроллер выглядит следующим образом:
foreach($rekantugas as $val)
{
$data = array(
'nama' =>$val->nama,
'nip' =>$val->nip,
'pangkat' =>$val->pangkat.' / '.$val->golongan,
);
Mail::to($val->email)->queue(new Sendemail($data));
}
Мой вопрос заключается в том, что когда я выполняю функцию отправки электронной почты, она занимает 10-15 секунд. Я все еще разрабатываю его на своем локальном хосте и использую Laravel 6 и postgresql.
Как мне решить эту проблему?
Примечание. Все письма успешно доставлены, но они просто займет много времени (медленно) для отправки электронной почты. Я хочу отправить электронное письмо с помощью действия формы.