2010-02-23 2 views
0

Какой сценарий, класс или функция вы используете для отправки многих электронных писем, исключая встроенную функцию «почта» и исключая почту PEAR (многие проблемы и проблемы совместимости в PHP 5.3).Лучший способ отправки массовой почты с использованием PHP без функции PEAR Mail и «mail»

Я хочу отправить около 5000 писем за «выстрел», но функция «почта» подключается и отключается для каждого письма. У PEAR Mail много проблем.

Я пробовал Swiftmailer, но HTML отображается дублирующимся во многих клиентах (потому что, по-видимому, он подключен).

Ответ PHPMailer?

PS: Извините за опечатки. Я бразилец.

ответ

2

Перед внедрением нашей собственной системы мы использовали PHPMailer с параметром isSMTP() и видели пропускную способность около 20 электронных писем/сек (время сборки + отправка). Если у вас есть статический контент, ваша пропускная способность должна быть немного выше.

Существует возможность использования постоянного SMTP-соединения.

+0

Что такое постоянное соединение SMTP. –

+1

@Jayapal Chandran: Обычно сеанс SMTP запускается и заканчивается после передачи одного сообщения. При постоянном соединении сеанс поддерживается, поэтому вам не нужно открывать и закрывать сокет/рукопожатие SMTP и т. Д. – jasonbar

1

PHPMailer будет делать то, что вы хотите, хотя, если вы используете его как загрузку страницы, помните о сроках исполнения вашей страницы. Если вы перейдете, вы хотите, чтобы вы смогли подобрать место, где вы остановились. Это предполагает, что каждое письмо настраивается для каждого пользователя.

Основываясь на этом опыте, я прекратил использовать загрузку таких PHP-скриптов с помощью веб-браузера, а вместо этого теперь выполняю их в командной строке.

+0

В чем разница, если я отправляю статическую электронную почту? Мой cron должен запустить один запрос db, а затем он может собрать одно сообщение, которое применяется ко всем получателям. Это что-то меняет в реализации? – DrANoel

+0

@John: В этом случае не задействован браузер, который мог бы отменить соединение (потому что загрузка страницы занимает слишком много времени). –

+0

John, вы упомянули cron, вы вызываете php как исполняемый файл (в этом случае ограничения на загрузку страницы не будут применяться), или вы вызываете страницу через wget (в которой она будет) или что-то еще. Я не уверен, что понимаю ваш вопрос – artlung

Смежные вопросы