За последние 24 часа нас посетили 39656 программистов и 1273 робота. Сейчас ищут 1304 программиста ...

рассылка

Тема в разделе "Прочие вопросы по PHP", создана пользователем crautcher, 21 окт 2011.

  1. crautcher

    crautcher Активный пользователь

    С нами с:
    21 май 2011
    Сообщения:
    156
    Симпатии:
    0
    есть кроновская рассылка на стену фейсбука юзерам . Отправка одному юзеру занимает секунду , что значит что за час я смогу отправить 3600 юзерам . А число юзеров скоро перевалит за этот лимит . Задача стоит написать демон на шеле , который будет исполнять по 10 юзеров через сценарий . тогда запустив 10 демонов мы увеличиваем скорость отправки . Как реализовать чтоб вызвав сценарий мы постили 1-10 юзерам , если еще раз то 10-20 юзерам и т.д.
     
  2. BaNru

    BaNru Активный пользователь

    С нами с:
    2 окт 2011
    Сообщения:
    7
    Симпатии:
    0
    Адрес:
    Сызрань
    Ну может, как простой вариант, сделать GET запросы.
    Т.е. в крон заносим 10 заданий, у каждого задания свой ID - index.php?id=1 (2-10)
    Затем вначале скрипта обрабатываем id и допустим если id 1, то выполняем отсылку на 1-1000, если 1, то 1001-2000... в общем тут есть несколько вариантов, либо конкретно задать для каждого ID циферки с какого по какой, или сделать как то с умножением, щас что то не соображу как, поздно для соображалки уже. :)

    И если я правильно понял, то скрипт запускается раз в секунду? Или я брежу?
    Если не брежу, то это глупость. Лучше сделать цикл и запускать скрипт реже.
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Я б делал через БД по такой схеме:
    1. Забиваем заданиям таблицу со значением поля 0 - значит не рассылалось
    2. Запускаем демона раз в секунду или типа того
    3, при запуске демон забирает часть заданий выставляя им поле 1 - значит забрал на исполнение
    4. При удачном постинге меняем значение поля на 2 - значит удачно
    5. Переодически запускаем еще один демон который чистит старье и проверяет чтобы единички не висели дольше часа допустим.