06
Дек
2016

SwiftMailer, долго отправляет сообщения

Yii2 фреймворк. Нужно сделать рассылку по определенных e-mail. Их может много, допустим 20 штук. Делаю отправку в методе сохранения модели.

Отправляю согласно документации

public static function sendMultipleMail($options, $setFrom, $setSubject, $setTextBody)
    {
        $messages = [];
        foreach ($options as $option) {
            $messages[] = \Yii::$app->mail->compose()
                ->setFrom([$setFrom])
                ->setTo($option->user->email)
                ->setSubject($setSubject)
                ->setTextBody($setTextBody);
        }
        Yii::$app->mail->sendMultiple($messages);
        return true;
    }

Конфиг

'mail' => [
            'class' => 'yii\swiftmailer\Mailer',
            'viewPath' => '@backend/mail',
            'useFileTransport' => false,//set this property to false to send mails to real email addresses
            //comment the following array to send mail using php's mail function
            'transport' => [
                'class' => 'Swift_SmtpTransport',
                'host' => 'smtp.gmail.com',
                'username' => '*******',//need username
                'password' => '*****',//need password
                'port' => '587',
                'encryption' => 'tls',
            ],
        ],

Проверял на 20 почтовых адресов - пока все письма будут отправлены, тогда сохранится модель . Когда 20шт - время сохранения - примерно 25 сек. Вот такие логи . 1,2 - вот такие блоки отправки . Думаю проблема в том, что каждый раз при отправке соединение устанавливается, после отправки прерывается

введите сюда описание изображения

Вопрос, можно ли каким-то способом оптимизировать отправку??Или каким образом тогда отправлять сообщения, если не в модели сохранения...? Чтобы не было такой задержки??

Источник: https://ru.stackoverflow.com/questions/600444/swiftmailer-%D0%B4%D0%BE%D0%BB%D0%B3%D0%BE-%D0%BE%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D1%8F%D0%B5%D1%82-%D1%81%D0%BE%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%B8%D1%8F

Тебе может это понравится...

Добавить комментарий