Есть несколько вещей, которые могут вызывать медленную работу.
Возможно, вы ожидаете полной отправки каждого письма, прежде чем sendmail () вернется. Это будет означать открытие SMTP-сокета, общение с другим почтовым сервером, отправку электронной почты и повторное закрытие сокета.
У нас есть система, которая отправляет довольно много писем в пакетном режиме, и для этого мы используем PHPMailer. Мы открываем сокет один раз, отправляем множество сообщений, затем снова закрываем его, и мы получаем хорошую производительность (он может отправить несколько сотен писем за один раз).
Если ваше сообщение совпадает со всеми получателями, я бы порекомендовал отправить их все по одному электронному письму и всем BCC, так как это отнимает много давления у вашего сценария.
Еще одна вещь, которую нужно проверить - это локальные антивирусные сканеры. Раньше у нас были проблемы со сканером исходящей электронной почты, который останавливал все это. Стоит посмотреть.