Сохранение нескольких пользовательских потоков Twitter в фоновом режиме (API потоковой передачи Twitter - Phirehose) - PullRequest
0 голосов
/ 05 сентября 2011

Как именно я поддерживаю работу Phirehose в качестве фонового процесса? Если каждый пользователь на моем сайте может открыть поток для Twitter API в течение всего сеанса вошедшего в систему (я знаю, что это не будет хорошо масштабироваться, но это необходимо сделать на начальном этапе), как мне поддерживать PHP-скрипт для запуска в фон все время?

Я мог видеть, как разветвлялся процесс с программой на C ++ и он запускался как демон, но как сохранить поток PHP fsocket открытым?

Я понимаю, как использовать этот API, как он работает, как собирать и использовать сообщения, но не уверен, как его поддерживать и работать

пожарный шланг: https://github.com/fennb/phirehose

Ответы [ 2 ]

0 голосов
/ 05 сентября 2011

Phirehose должен работать бесконечно, если он запускается как собственный процесс PHP - то есть: он никогда не должен завершаться сам по себе, если что-то не идет не так.Единственная обычная причина, по которой он должен остановиться, это если он отключается слишком много раз (или иным образом получает ошибки соединения).

php-cli не учитывает параметр * set_time_limit () *, поэтому вам не нужно беспокоитьсяоб этом, если вы используете CLI SAPI.Вы можете проверить, какой SAPI ваш двоичный файл, запустив php -v :

$ php -v PHP 5.2.10-2ubuntu6.4 с Suhosin-Patch 0.9.7 ( cli ) (сборка: 10 мая 2010 г. 14:33:52) Copyright (c) 1997-2009 PHP Group Zend

Если процесс не работает,проверьте вывод журнала, в котором должно быть описано, почему и что происходит.

Кроме того, Twitter разрешает только одно соединение для каждого пользователя, поэтому, если вы пытаетесь подключиться несколько раз с одним и тем же именем пользователя, это может вызватьРазъединения.

Удачи!

0 голосов
/ 05 сентября 2011

Если вы хотите, чтобы PHP-скрипт продолжал работать, то вызывайте set_time_limit() очень и очень долго (или продолжайте вызывать его время от времени, пока не истечет время). А затем просто убедитесь, что не выходите из скрипта, и он будет работать, пока вы не скажете иначе.

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