Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Рассылка большого количества писем, отправка частями
 
 автор: MikeSVB   (17.12.2009 в 09:18)   письмо автору
 
 

Поискал на форуме по темам с рассылками и не нашёл ответа. Можно ли как - либо продолжить выполнение скрипта , как следить за выполнением скрипта или перезапустить его. ?

Ситуация. Есть база пользователей около 3 тысяч. раз в неделю должно рассылаться (понятно по крону), чтобы не все сразу а по частям, допустим по 100, то есть тридцать заходов писать для крона? или как перезапустить скрипт ?

  Ответить  
 
 автор: cheops   (17.12.2009 в 12:05)   письмо автору
 
   для: MikeSVB   (17.12.2009 в 09:18)
 

База сильно растет? Если не очень, то можно и 30 заходов создать - это не очень много.

  Ответить  
 
 автор: MikeSVB   (18.12.2009 в 03:45)   письмо автору
 
   для: cheops   (17.12.2009 в 12:05)
 

поискал кое -что.

База растёт около 100 пользователей в неделю.


если делать вот так?
схематично

<?php

set_time_limit
(0);//неограниченное время выполнения скрипта

$count="50"//количество заходов

for($i="0";$i<$count;$i++)
{

////отправка партии писем
//тут цикл отправки
////конец отправка партии писем
    

              
sleep(60);//митнутное ожидание до следующего запроса

}


?>


Делал на примере нескольких писем, если запускать из браузера, то всё замечательно приходит и работает... если запускать из командной строки по ssh то не приходят мэйлы (не знаете от чего это может быть?)

и
Будет ли загрузка сервера, когда скрипт в sleep()?

  Ответить  
 
 автор: cheops   (18.12.2009 в 12:24)   письмо автору
 
   для: MikeSVB   (18.12.2009 в 03:45)
 

>Делал на примере нескольких писем, если запускать из браузера, то всё замечательно
>приходит и работает... если запускать из командной строки по ssh то не приходят мэйлы (не
>знаете от чего это может быть?)
1. Не используются ли где-нибудь суперглобальные массивы (при запуске по cron они могут пустовать)
2. Не используются ли где-нибудь включаемы файлы, нет ли ошибок при запуске по ssh?
3. Обычно консоль и Web-сервер обслуживают разные интерпретаторы PHP - в консоли может быть не настроена отправка почты - тут необходимо обратиться в службу тех.поддержки или к администратору.

>Будет ли загрузка сервера, когда скрипт в sleep()?
Нет.

  Ответить  
 
 автор: MikeSVB   (21.12.2009 в 03:37)   письмо автору
 
   для: cheops   (18.12.2009 в 12:24)
 

потестировал. Запускал через GET запрос. и письма приходят.

>>Будет ли загрузка сервера, когда скрипт в sleep()?
>Нет.

вот это меня тревожило болше всего) . спасибо за ответ.

и ещё. с какой периодичностью лучше отправлять партии писем?
60 секунд хватит?
т.е. по 100 сообщений какждую минуту

  Ответить  
 
 автор: cheops   (23.12.2009 в 20:28)   письмо автору
 
   для: MikeSVB   (21.12.2009 в 03:37)
 

Лучше побольше интервал назначить - минут 5 или даже 10.

  Ответить  
 
 автор: linux_hak   (18.12.2009 в 09:51)   письмо автору
 
   для: cheops   (17.12.2009 в 12:05)
 

У меня рассылка работает таким образом:

1. Формируется список кому отправить по параметрам рассылки (есть ли что отправлять) и добавляется в с БД список пеисем с указанием email, титла и тела письма.
2. по крону отправляется по 100 писем
3. удаляем то что отправили

  Ответить  
 
 автор: MikeSVB   (21.12.2009 в 03:38)   письмо автору
 
   для: linux_hak   (18.12.2009 в 09:51)
 

сделаю так же)
спасибо

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования