php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.08.2011, 19:15  
Benutzer
 
Registriert seit: 24.09.2009
Beiträge: 95
PHP-Kenntnisse:
Anfänger
Dopar zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Daher muss ein neuer Server her ...
__________________
There are only 10 types of people in the world: Those who understand binary, and those who don't.
Dopar ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 05.08.2011, 23:38  
Erfahrener Benutzer
 
Registriert seit: 04.08.2010
Beiträge: 287
PHP-Kenntnisse:
Fortgeschritten
zwutz wird schon bald berühmt werden
Standard

hm... gibts da nicht noch die zugegeben recht unorthodoxe Methode, dass sich das Script durch nen system-call selbst neu startet?

PHP-Code:
system('php /path/to/script.php > /dev/null &'); 
zwutz ist gerade online   Mit Zitat antworten
Alt 06.08.2011, 08:41  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

und wie soll die Ausgabe von /dev/null zum Client kommen?
fab ist offline   Mit Zitat antworten
Alt 06.08.2011, 09:23  
Erfahrener Benutzer
 
Registriert seit: 28.09.2008
Beiträge: 1.168
PHP-Kenntnisse:
Fortgeschritten
Koala befindet sich auf einem aufstrebenden Ast
Standard

indem man 2 Scripts benutzt:
- Script 1 läuft als cornjob und schreibt die Ausgabe in die DB.
- Script 2 wird per Ajax angestoßen und holt sich in regelmäßigen Abständen
den neuesten DB-Inhalt.
__________________
Eine if-else-Abfrage nimmt, ordentlich geschrieben eine Menge Platz weg. Platzsparend geht es mit einem ternären Operator.
Koala ist offline   Mit Zitat antworten
Alt 06.08.2011, 10:05  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

Das ist jetzt aber was völlig anderes und hat mit dem Long Polling Timeout nichts mehr zu tun.
fab ist offline   Mit Zitat antworten
Alt 06.08.2011, 11:36  
Erfahrener Benutzer
 
Registriert seit: 28.09.2008
Beiträge: 1.168
PHP-Kenntnisse:
Fortgeschritten
Koala befindet sich auf einem aufstrebenden Ast
Standard

so kann er doch den Timeout verhindern oder nicht ?
__________________
Eine if-else-Abfrage nimmt, ordentlich geschrieben eine Menge Platz weg. Platzsparend geht es mit einem ternären Operator.
Koala ist offline   Mit Zitat antworten
Alt 06.08.2011, 11:50  
Erfahrener Benutzer
 
Registriert seit: 04.08.2010
Beiträge: 287
PHP-Kenntnisse:
Fortgeschritten
zwutz wird schon bald berühmt werden
Standard

Zitat:
Zitat von fab Beitrag anzeigen
und wie soll die Ausgabe von /dev/null zum Client kommen?
in der Regel baut man sowas eh nicht, um im Browser zuzusehen, wie immer wieder mal was ausgegeben wird. Und notfalls gibts ja /dev/stdout
zwutz ist gerade online   Mit Zitat antworten
Alt 06.08.2011, 11:59  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard

Der Timeout WIRD kommen!

Ziel beim Longpolling ist es, eine Verbindung so lange wie möglich aufrecht zu erhalten, das geht aber nicht endlos. Das sendende Script darf die Verbindung also nicht versuchen, endlos zu halten, sondern MUSS irgendwann eine Response liefern (sonst trennt der Webserver das Socket irgendwann von sich aus). Wenn die aktuelle Verbindung dann terminiert wird, entweder durch korrektes Senden von Daten oder weil das Serverscript an einen (eigenen) timeout kommt, re-requestet der Client sofort weitere/neue Daten. Dabei wird eine neue Connection aufgebaut, die wiederum für eine gewisse Zeit gehalten werden kann.

Das Premature end of script header kommt immer dann, wenn der Webserver derjenige welche ist, der die Verbindung kappt. Das darf also nicht passieren.

Zitat:
Ich denke im Notfall mach ich das Re-Connect eben nach 1,5 Minuten. Das wäre ein Mittelweg
Initiier das aber von der Serverseite aus. Schick nach der Zeit einen leeren Response an den Client, damit dieser einen neuen Request starten kann.

golden rule: Die Request/Resonse Loop muss abgeschlossen werden.
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Alt 06.08.2011, 12:32  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

Zitat:
Zitat von zwutz Beitrag anzeigen
in der Regel baut man sowas eh nicht, um im Browser zuzusehen, wie immer wieder mal was ausgegeben wird. Und notfalls gibts ja /dev/stdout
Ich glaube, einer von uns hat Long Polling nicht verstanden. Wobei du insofern recht hast dass es nicht um "immer mal wieder" etwas ausgeben geht sondern bei der ersten Ausgabe die Verbindung beendet wird, siehe Istegelitz. Und stdout führt bei einem Hintergrundprozess auch ins nichts, das aufrufende Skript ist ja schon beendet.
fab ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Datei vorladen und Timeout entgehen hstefan PHP Einsteiger 17 24.06.2011 14:05
timeout bei ftp_ssl_connect zwutz PHP-Fortgeschrittene 3 02.03.2011 16:38
Session GC und Timeout nutcracker PHP Einsteiger 1 24.01.2011 19:32
curl und Timeout unter 800ms unsource PHP-Fortgeschrittene 10 16.07.2009 14:19
Firefox startet Script bei Timeout wieder neu Wolla PHP Tipps 2009 2 18.05.2009 18:07
SoapClient: Timeout bei Methodenaufruf robbash PHP Tipps 2009 1 24.04.2009 13:48
timeout intiligent setzen... halskrause PHP Tipps 2009 1 09.02.2009 09:13
fsockopen - timeout funktioniert nicht! PHP Tipps 2007 3 23.01.2006 23:46
[C++] double overflow, long double Zergling-new Off-Topic Diskussionen 2 10.01.2006 18:28
Code Syntax Highlighting imported_Lumio PHP-Fortgeschrittene 9 16.08.2005 11:06
[Erledigt] Eingaben ohne Timeout piepsen PHP Tipps 2005-2 8 13.07.2005 19:20
Große Daten in Datenbank einspielen ohne timeout PHP-Fortgeschrittene 5 22.05.2005 08:47
Apache timeout bei einem Cron mit riesiger Datenmenge PHP-Fortgeschrittene 12 12.04.2005 15:29
timeout problöme ... PHP Tipps 2005 5 20.01.2005 17:17
TCP-Verbindungstest - Timeout einbauen PHP Tipps 2004 13 30.10.2004 14:37

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php skript laufzeit timeout verhindern

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:01 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum