Seite 2 von 3

Verfasst: 26.03.2005 23:28
von 125
Gamer hat geschrieben: Die Frage ist eher ob PB das so schnell mit dem Connecten hinbekommt...
bleib die ganze Zeit connectet und für dann immer deine Abfragen durch für jede Abfrage zu reconnecten wäre ja schwachsinnig... :wink:

Verfasst: 26.03.2005 23:45
von Gamer
Du meinst InternetOpen_ + InternetConnect_ und InternetCloseHandle_ erst wenn das Programm beendet wird?

Verfasst: 27.03.2005 15:54
von 125
Gamer hat geschrieben:Du meinst InternetOpen_ + InternetConnect_ und InternetCloseHandle_ erst wenn das Programm beendet wird?
Warum per API? PB interne befehle können das doch auch und du wärst Plattform unabhängig.
Zu der Frage: Ja.

Verfasst: 27.03.2005 16:22
von Gamer
Weils per API kürzer ist... aber zeig mir lieber mal ein funktionierendes Beispiel für so eine "keep-alive-verbindung"!

Verfasst: 27.03.2005 17:35
von 125
Hab leider bisher nur MySQL in verbindung mit PHP programmiert kann dazu nichts sagen. Aber wenn PHP einmal COnnectet ist kann es ja auch mehrere Querys ausführen auch mehrere male den gleichen (wie dus vorhast) also warum sollte das nicht gehen? Die verbindung wird ja durch dich abgebrochen und nicht durch den Server.
Ausserdem was ist an der Api Lösung kürzer? schickste auch deinen QueryString und bekommst deine Antwort back. Da ist doch kein Unterschied oder irre ich mich?

Verfasst: 27.03.2005 17:57
von Gamer
Hab leider bisher nur MySQL in verbindung mit PHP programmiert kann dazu nichts sagen. Aber wenn PHP einmal COnnectet ist kann es ja auch mehrere Querys ausführen auch mehrere male den gleichen (wie dus vorhast) also warum sollte das nicht gehen? Die verbindung wird ja durch dich abgebrochen und nicht durch den Server.
Naja nach Ausgabe des PHP-Scripts ist eigentlich Ende. Warum sollte ich auch die Verbindung unbedingt halten - irgendwann sind dann zuviele Connects gleichzeitig und nichts geht mehr. Außerdem hab ich noch keine wirklich funktionierende Lösung gesehen - mit einem stinknormalen Server und MySQL/PHP kommt man da nicht weit, selbst wenn man die Ausführungszeit erhöht usw.
Ausserdem was ist an der Api Lösung kürzer? schickste auch deinen QueryString und bekommst deine Antwort back. Da ist doch kein Unterschied oder irre ich mich?
Es sind lediglich weniger Codezeilen / Bytes ;)

Verfasst: 27.03.2005 17:59
von 125
Gamer hat geschrieben: Warum sollte ich auch die Verbindung unbedingt halten -
Ausserdem was ist an der Api Lösung kürzer? schickste auch deinen QueryString und bekommst deine Antwort back. Da ist doch kein Unterschied oder irre ich mich?
Es sind lediglich weniger Codezeilen / Bytes ;)
Glaube net das die ApiFunc kürzer sind meistens sind se länger aber ich lasse mich gerne des besseren belehren.
Warum die Connection gehalten werden sollte: Reconnects dauern lange und der Server denkt sich irgendwann wenn er einen Floodcheck hast das du versuchst den Server zu überlasten und kickt+bannt dich.

Verfasst: 27.03.2005 18:05
von Gamer
Der Server kickt Dich doch aber automatisch irgendwann, genauso wie es bei FTP ein Timeout gibt...

Code: Alles auswählen

hInternet=InternetOpen_("FTP",#INTERNET_OPEN_TYPE_DIRECT,Proxy,ProxyBypass,0)
hConnect=InternetConnect_(hInternet,ServerName,#FTP_PORT,UserName,Password,#INTERNET_SERVICE_FTP,0,0)
FtpPutFile_(hConnect,datei$,#FTP_TRANSFER_BINARY,0)
InternetCloseHandle_(hInternet)
Wie sollte das in PB kürzer sein?

Verfasst: 27.03.2005 18:09
von 125
eine FTP Connection Timed Out aber nur wenn der FTp Server eine bestimmte zeit lang keine CMDs mehr erhält. Genauso wie bei MYSQL da du alle 5 Sekunden eine abfrage sendest wird nix time outen aber das mit den zulässigen Connections wäre ein Problem allerdings hast du dieses Problem schon wenn nur eine Connection allowed ist und du 2 Clients hast die durch zufall zur gleichen Zeit abfragen. Desto mehr clients desto höher die Wahrscheinlichkeit dieses Problems.

Und zu den Api Befehlen : Ok in dem Fall hattest Recht, aber wegen ein paar Bytes mehr würde ich Linux-User nicht ausbooten.

Verfasst: 27.03.2005 18:22
von Gamer
125 hat geschrieben:eine FTP Connection Timed Out aber nur wenn der FTp Server eine bestimmte zeit lang keine CMDs mehr erhält. Genauso wie bei MYSQL da du alle 5 Sekunden eine abfrage sendest wird nix time outen aber das mit den zulässigen Connections wäre ein Problem allerdings hast du dieses Problem schon wenn nur eine Connection allowed ist und du 2 Clients hast die durch zufall zur gleichen Zeit abfragen. Desto mehr clients desto höher die Wahrscheinlichkeit dieses Problems.
Hm, alle reden davon aber es gibt kaum Beispiele ;) Dann lieber diese etwas rudimentäre Lösung ;) Hab es grad laufen, sieht aus wie Realtime ;) Trotz 3 Sekunden Pause zwischen den Connects...
Und zu den Api Befehlen : Ok in dem Fall hattest Recht, aber wegen ein paar Bytes mehr würde ich Linux-User nicht ausbooten.
Ich kenne Linux-User ;) Für Mac gehts ja auch nicht, von daher...