![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Цербер |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 21.11.2007 Репутация: нет Всего: 1 |
Доброе время суток!
Стоит задача системы рассылки для подписчиков, а их очень много, делятся на категории по странам и видам деятельности. Сам интерфейс и распределение подписчиков по категориям не проблема, вся проблема в скрипте рассылки. Что посоветуете что бы при рассылке сервер не нагружался до такой степени, что бородатый одмин не останавливал работу скрипта. У меня есть пару идей т.к. время выполнения скрипта не должно привышать 30 сек воспользоваться функцией
Ну пока всё. А что Вы посоветуете уважаемые форумчане! Заранее благодарю! |
||||
|
|||||
| Anarki |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 14.3.2005 Репутация: 7 Всего: 11 |
Можно еще разделить массив подписчиков на куски и каждый кусок отправлять скриптом, который запускает крон через несколько минут.
|
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
можно попроще, без крона
держать специальную таблицу в БД, куда при начале рассылки записывать адреса клиентов и номер сообщения и флаг отправки сообщения подключить скрипт рассылки к какому-нибудь часто выполняемому (скажем странице сайта), и всякий раз, когда на неё заходят - запускается рассылка. она выбирает из базы ограниченное число записей из тех что "не выпонлено" и рассылает, по выполнению меняет флаг на "выполнено". постепенно всё разошлётся |
|||
|
||||
| Цербер |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 21.11.2007 Репутация: нет Всего: 1 |
bars80080 здесь немного другая ситуация, извиняюсь что сразу не описал.
рассылка происходит не автоматом, а админ с сабмита запускает рассылку по категориям. да и ещё желательно без крона=) |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
ну и что? набрал сообщение, выбрал группы клиентов, нажал кнопку дальше дело техники. сообщение сохраняется под номером в файле или БД, в таблицу очереди записываются адреса клиентов, номер сообщения и флаг. сама рассылка совершается за счёт скипта запускаемого постоянно при заходе на сайт |
|||
|
||||
| Цербер |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 21.11.2007 Репутация: нет Всего: 1 |
bars80080
Спасибо, а есть ещё какие нибудь советы? |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Все, что кроме БД - бред... Полный. с точки зрения технологии это самоубийство. Цербер, что значит грузить сервер. Либо вы одним скриптом все делаете, либо разбиваете задачу. Лушче - одним скриптом. Принцип такой. Условно. Берем из БД первых 30 подписчиков, отправляем им письма, если mail успешно выполнился, в базе отмечаем мол такая рассылка для этих пользователей отправлена. Делаем sleep на минуту, пошли следующие тридцать и так далее... |
|||
|
||||
| Цербер |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 21.11.2007 Репутация: нет Всего: 1 |
Mal Hack
Спасибо за совет, так и поступлю! |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |