socket_accept und schluss?
SorgenkindMech
- php
moin ihrs
ganz kurze frage auf die es hoffentlich eine ganz kurze antwort gibt *g*
in meinem script steht folgendes:
4332: $socket = socket_create_listen(6000);
4333: socket_accept($socket);
tja, und wenn ich zeile 4333 nicht kommentiere, also sozusagen ausblende, sodass die zeile nicht ausgeführt wird, hängt sich mein ganzes script auf ..... kommt nichtmal execution_time blabla, vonwegen zeit überschritten (was aber eingestellt ist auf 30 sec) nix...
ich mein ok, der wartet nun auf ne eingehende verbindung oder?
aber der kann doch nich ewig warten
bzw. ich muss ja auch n anderen serer anweisen was zu schicken, mach ich das aber davor gehts ins leere, und mach ich es dahinter wirds garnich ausgeführ, oder?
ok, frage wird doch länger, hier mal was ich vor habe:
ich sende an n hl-server den befehl mir das log zu schicken, befehl kommt auch an, ok
dann sage ich dem script horchen, und akzeptieren, und denn will ich das einlesen und weiter verarbeiten
oder muss ich erst sagen horchen dann gib und dann akzeptieren?
werd ich auch gleich ma ausprobieren, muss ja dafür rechner neu starten, weil sich dabei komplett IIS aufhängt *grrr*
naja, wär dankbar für jeden guten ratschlag bezüglich sockets, kenn mich da auch so gut wie garnich aus
bis denn dann
Hi,
ganz kurze frage auf die es hoffentlich eine ganz kurze antwort gibt *g*
Ja, aber die wird Dir nicht gefallen befürchte ich.
in meinem script steht folgendes:
4332: $socket = socket_create_listen(6000);
4333: socket_accept($socket);tja, und wenn ich zeile 4333 nicht kommentiere, also sozusagen ausblende, sodass die zeile nicht ausgeführt wird, hängt sich mein ganzes script auf ..... kommt nichtmal execution_time blabla, vonwegen zeit überschritten (was aber eingestellt ist auf 30 sec) nix...
Das ist eine Definitionsfrage, solche Wartezeiten zu der Ausführungszeit dazuzählen.
ich mein ok, der wartet nun auf ne eingehende verbindung oder?
Jupp. (gehe aber davon aus, das alles korrekt geschrieben wurde, kenne mich in PHP nicht so aus)
aber der kann doch nich ewig warten
Doch, das tut er.
bzw. ich muss ja auch n anderen serer anweisen was zu schicken, mach ich das aber davor gehts ins leere, und mach ich es dahinter wirds garnich ausgeführ, oder?
Dahinter wird's nix, klar, aber davor durchaus. Wo liegt das Problem?
ok, frage wird doch länger, hier mal was ich vor habe:
ich sende an n hl-server den befehl mir das log zu schicken, befehl kommt auch an, ok
Ist möglich, das der hl-server zu ungeduldig ist.
Siehe http://de2.php.net/manual/en/function.pcntl-fork.php für eine mögliche Lösung.
dann sage ich dem script horchen, und akzeptieren, und denn will ich das einlesen und weiter verarbeiten
oder muss ich erst sagen horchen dann gib und dann akzeptieren?
Nein, fork(), das Kindlein horcht
Dann ordern.
Warten, bis etwas angekommen ist.
Angekommenes verarbeiten.
werd ich auch gleich ma ausprobieren, muss ja dafür rechner neu starten, weil sich dabei komplett IIS aufhängt *grrr*
Für solche Experimente empfiehlt sich kein Windows mit IIS, das bringt nur Magengeschwüre.
naja, wär dankbar für jeden guten ratschlag bezüglich sockets, kenn mich da auch so gut wie garnich aus
Dann mache Dich doch kundig:
http://www.developerweb.net/sock-faq/
http://ca.php.net/manual/en/ref.sockets.php
so short
Christoph Zurnieden
ich mein ok, der wartet nun auf ne eingehende verbindung oder?
Jupp. (gehe aber davon aus, das alles korrekt geschrieben wurde, kenne mich in PHP nicht so aus)
aber der kann doch nich ewig warten
Doch, das tut er.
sau die ;)
Dahinter wird's nix, klar, aber davor durchaus. Wo liegt das Problem?
.. werd ich gleich ma testen
Ist möglich, das der hl-server zu ungeduldig ist.
Siehe http://de2.php.net/manual/en/function.pcntl-fork.php für eine mögliche Lösung.
also wenn ich die funktion richtig verstehe, dann wird sozusagen eine neue instanz geschaffen, welche zeitgleich abläuft, sodass ich theoretisch 2 sachen zur fast gleichen zeit abarbeiten kann
mein verständnis:
ich gable
in der urpsurngsfunktion sage ich akzeptieren
im nebenprozess forde ich die daten an
urpsprungsprozess bekommt daten, nebenprozess hat schon abgedankt
alle sind zufrieden ....?
ich denke ich liege da ein wenig falsch, aber gut, muss mich etwas näher damit beschäftigen
weiß ja nich, ob es möglich ist, dass wenn der horcht, alles was er bekommt in nen puffer legt und wenn man dann sagt akzeptieren, dass er dann den puffer sozusagen reingedrückt bekommt
werd aber auf jeden fall berichten, wie ich vorwärts komme
Dann mache Dich doch kundig:
http://www.developerweb.net/sock-faq/
respekt, die faq is ja riesig, werd ich mich morgen dran setzen
so dann bis morgen und danke auf jeden fall schonmal