PHP + ICQ (не про то, как зайти в icq через php)

poryt

Новичок
PHP + ICQ (не про то, как зайти в icq через php)

Всех приветствую.
Есть задача.
Нужно каждую минуту скриптом проверять базу и если время пришло(время там может стоять любое, поэтому и нужно проверять каждую минуту) - слать сообщения юзеру в icq. Это не спамерка (не стал бы я с php париться), а что-то типо оповещения.
Отправлять через icq я могу, логиниться - всё это есть в инете. Проблема в другом.
У меня есть 2 алгоритма для этого
1) Кроном каждую минуту запускаем скрипт, логинимся в icq, отправляем если нужно, разлог-ся. Но боюсь, что могут быть проблемы с подключением (лог, разлог каждую минуту может залочить icq. Сам нередко видел у себя на компе сообщение "Вы подключаетесь слишком часто... бла-бла")
2) Запустить скрипт 1 раз, логиниться, и далее юзать sleep на минуту.
То есть он 1 раз залогиниться, а далее будет идти цикл с проверкой пришло ли время отправки, если да то отправляем, затем сон на минуту и снова сначала(т.е. проверка и т.д.). Но вот тут боюсь, что память нагнется, подскажите может какие функции юзать, чтобы память осовбождать. может нужно переменные убивать постоянно или еще чтото. Вообще прокатит ли этот метод. Можно по сути и убивать запуск скрипта другим скриптом каждый час, например.
В общем суть в том, какие функции для 2ого варианта использовать, чтобы память не забилась.
Спасибо
 

флоппик

promotor fidei
Команда форума
Партнер клуба
Преждевременная оптимизация.... нувызнаете.
 

tz-lom

Продвинутый новичок
есть такая штука unset - освобождает память
я бы на вашем месте сделал так:
крон каждую минуту проверяет что демон не упал,если упал - перезапускает его (или сам становится демоном)

сам же демон (помимо ведения пид файла) постоянно подключен к аське и ждёт сигнала "це мол шли"
я бы сделал ждалку не по минуте,а как нибудь по сигналу или же через соответсвующий сервис/демон
возмжно в этом вам поможет что нибудь из comet решений (к сожалению ничего сам так и не опробовал,так что рекоммендовать не могу)
или же эта статья на которую нарвался пока искал как же пишется комет xD http://habrahabr.ru/blogs/php/40432/
 

флоппик

promotor fidei
Команда форума
Партнер клуба
Вы гоните.
У меня скрипты на пхп запущены месяцами - и ниче не течет.
Прежде чем решать проблему, убедитесь, что она существует.
 

whirlwind

TDD infected, paranoid
флоппик смотря как написаны. Если ооп с циклическими ссылками, то еще как течет. А если портянками, то не забьется. Вообще я уже говорил, это нонсенс для языка с автоматическим управлением памятью.
 

флоппик

promotor fidei
Команда форума
Партнер клуба
флоппик смотря как написаны.
у ТС они ваще никак ненаписаны. Нельзя решать несуществующие проблемы. )
ООП, с циклическими ссылками - это нехорошо в принципе, а не только в случае с долгоиграющим запуском, и не только в пхп.
 

newARTix

Новичок
под виндой как-то надо было сделать быстренько "демона", чтобы синхронизировать данные на сайте. Так как не знаю нифига кроме PHP то сделал так:

Создал файлик jct2web.bat в нем:
Код:
@echo off
.\php\php.exe -q -c .\php\php.ini -f .\scripts\main.php
jct2web.bat
Вот и весь демон :)
 

tz-lom

Продвинутый новичок
ага,я тоже подобное делал,когда на хостере был "запрещён крон"
правда потом слегка обломался- сервак гасил все процессы работающие больше суток
 
Сверху