Почему фасад MAIL долго отрабатывает в Laravel 5.2?
Всем доброго времени!
Почему тормозит (долго перегружается страница) скрипт при использовании Mail?
Если убрать с кода оправку Email, то код в разы быстрее работает
use Illuminate\Support\Facades\Mail;
$text = 'some text in DB';
$title = 'some title';
$userEmail = 'some user email';
Mail::send('emails.send_mail', ['text' => $text], function ($message) use ($userEmail, $title) {
$message->from('no-reply@shsh.ru', 'Sender Name');
$message->to($userEmail)->subject($title);
});
Как решить такое торможения? Кто что посоветует?
Это не фасад тормозит, а в принципе отправка email дело не быстрое. Если хотите быстро это делать - то сделайте отправку email через очереди. laravel.su/docs/5.0/mail#queueing-mail
UPD
Еще сервис отправки email через api (mandril, mailchimp). API отрабатывает быстро, а сообщение становится в очередь на отправку уже на самом сервисе
Используй очереди. Создай очередь на Mail, и Job на отправку. Собственно добавляешь в очередь и дальше все само. Главное - не забыть ее запустить). Лагает, потому-что отправка работает синхронно - пока не отправится, до того времени сервер не ответит. Так делать не нужно.