Обработка большого количества оповещений по электронной почте - PullRequest
0 голосов
/ 04 апреля 2011

На моем сайте у нас есть возможность отправлять уведомления по электронной почте об обновлениях.Из-за популярности сайта и его функции, в некоторых случаях для одного обновления может потребоваться отправить от 30 до 300 оповещений.Каждое из этих предупреждений имеет отдельную ссылку «сбросить», чтобы гарантировать, что они не будут получать спам с обновлениями (например, ответы на темы форума).

Так что, само собой разумеется, на более популярных обновлениях страница будет замедляться.

Как бы вы порекомендовали обрабатывать большое количество оповещений по электронной почте, чтобы они не влияли на загрузку страницы при публикации обновления?

Ответы [ 2 ]

1 голос
/ 04 апреля 2011

Я бы запланировал обновления из задачи переднего плана («при ​​загрузке страницы») в файл или базу данных и обработал их задачей cron, чтобы перевести эту операцию в фоновый режим.

Я сомневаюсь, что это действительно достаточно важно (или прерывается достаточно часто), чтобы вы фактически подтвердили, что все обновления были успешно отправлены, но такое уведомление также можно предоставить.

0 голосов
/ 04 апреля 2011

Я бы либо отправлял их партиями, показывал бы индикатор выполнения, как я советовал здесь: Обработка больших объемов данных в PHP без тайм-аута браузера

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...