Ну, Вы могли просто работать с wget - продолжаются - зеркало.
Вы не должны соединяться с удаленным SMTP сценарием, но поставлять к localhost, использующему sendmail (или лучше, постфикс). Sendmail должен заботиться о передаче сообщений. Если необходимо удостовериться, что все сообщения выходят через определенную машину шлюза, настраивают sendmail с корректным smarthost.
Причина, которую Вы хотите сделать, это - то, что отправка почты намного более сложна затем, Вы могли бы первоначально думать, и sendmail (или лучше, постфикс) создается для обработки всех окровавленных деталей как управление очереди.
Что касается какого происходит на самом почтовом сервере, Вы проверили загрузку и другие факторы на том сервере? Это могло бы быть перегружено после отправки такого количества сообщений в него, и является законно медленным из-за этого. Проверьте вещи как 'вершина', 'netstat-n', и т.д...
Можно хотеть попытаться увеличить многословие журнала на sendmail. Это может дать Вам еще некоторый ключ к разгадке.
Вы, возможно, должны попытаться определить, прибывает ли задержка из стороны PHP или с sendmail стороны.
Когда это медленный get's, выполняет netstat и видят, какие порты открыты.
Двойная проверка DNS. Удостоверьтесь, что Ваш сервер может быстро разрешить доменные имена. Часто я выполняю кэширующийся сервер DNS локально при отправке больших объемов электронной почты.
Я не использовал PHPMailer этим способом, но я смог просто назвать/usr/sbin/sendmail с помощью сценария PHP как см. 600 + сообщения/минута на скромных аппаратных средствах.