Du hast Recht. Die max. Anzahl der Requests ist pro 24 Srunden auf 5000 beschränkt, und das würde auf jeden Fall eng werden. Allerdings hat man, sobald man seine Anwendung zertifizieren lässt (was angeblich nicht besonders schwer sein soll) gar keine Restriktionen mehr, außer der, dass nur 18 Requests gleichzeitig erlaubt sind.
Und zu deiner Rekursionslösung: Bei mir liegt das Problem nicht, wie in deinem Beitrag hier, darin, dass ich die max_execution_time evtl. überschreiten muss, sondern darin, dass das Script, welches makeCalls.php aufruft, die Antwort abwarten muss, die evtl. sehr lange dauern kann. Und das ist bei deiner Rekursionslösung, wenn ich das so richtig überblicke, doch auch der Fall, oder?
Um zu verdeutlichen, was eigentlich gemacht werden soll, habe ich mal den grundsätzlichen Aufbau mit Paint aufgezeichnet. Sieht hässlich aus, trifft es aber ungefähr. Der Client braucht die Request-ID von initialize.php, um den Status abfragen zu können, und auch um anschließend die Ergebnisse herunterzuladen. Wenn initialize.php erst abwarten muss, bis makeCalls.php fertig ist, gibt es keine Statusanzeige, und das vergrault die User, wenn sie evtl. über 10 Sekunden werten müssen. Noch schlimmer, evtl. führt makeCalls.php noch munter einige weitere Requests durch, und der Client muss warten, obwohl seine Ergebnisse längst da sind - weil er keine Request-ID zum Herunterladen der Ergebnisse bekommt.
Und ich habe einen Virtual VPS. Ich werd am Montag mal anfragen, aber bin nicht sehr zuversichtlich, was die Installation eines solchen Servers anbelangt. Aber fragen kost ja nix...
Vielen Dank euch beiden für die guten Tipps, aber wies aussieht, werde ich das wohl so machen müssen, dass ich makeCalls.php mit der Request-ID durch den Client aufrufe.
Obwohl mir gerade ein "genialer" Gedanke kommt ;-): Könnte man nicht zwischen makeCalls.php und initialize ein weiteres Script schalten, welches nur die Aufgabe hat, die Optionen von initialize.php entgegenzunehmen, und an makeCalls.php weiterzuleiten. Jetzt setzt man die max_execution_time für dieses Script auf 1s, und Zack - makeCalls.php läuft, aber initialize.php muss nur eine Sekunde warten, bis er dem Client die Request-ID geben kann. Das muss ich gleich heute mal ausprobieren. Ich sag dann Bescheid, obs klappt.
Viele Grüße!
Und zu deiner Rekursionslösung: Bei mir liegt das Problem nicht, wie in deinem Beitrag hier, darin, dass ich die max_execution_time evtl. überschreiten muss, sondern darin, dass das Script, welches makeCalls.php aufruft, die Antwort abwarten muss, die evtl. sehr lange dauern kann. Und das ist bei deiner Rekursionslösung, wenn ich das so richtig überblicke, doch auch der Fall, oder?
Um zu verdeutlichen, was eigentlich gemacht werden soll, habe ich mal den grundsätzlichen Aufbau mit Paint aufgezeichnet. Sieht hässlich aus, trifft es aber ungefähr. Der Client braucht die Request-ID von initialize.php, um den Status abfragen zu können, und auch um anschließend die Ergebnisse herunterzuladen. Wenn initialize.php erst abwarten muss, bis makeCalls.php fertig ist, gibt es keine Statusanzeige, und das vergrault die User, wenn sie evtl. über 10 Sekunden werten müssen. Noch schlimmer, evtl. führt makeCalls.php noch munter einige weitere Requests durch, und der Client muss warten, obwohl seine Ergebnisse längst da sind - weil er keine Request-ID zum Herunterladen der Ergebnisse bekommt.
Und ich habe einen Virtual VPS. Ich werd am Montag mal anfragen, aber bin nicht sehr zuversichtlich, was die Installation eines solchen Servers anbelangt. Aber fragen kost ja nix...
Vielen Dank euch beiden für die guten Tipps, aber wies aussieht, werde ich das wohl so machen müssen, dass ich makeCalls.php mit der Request-ID durch den Client aufrufe.
Obwohl mir gerade ein "genialer" Gedanke kommt ;-): Könnte man nicht zwischen makeCalls.php und initialize ein weiteres Script schalten, welches nur die Aufgabe hat, die Optionen von initialize.php entgegenzunehmen, und an makeCalls.php weiterzuleiten. Jetzt setzt man die max_execution_time für dieses Script auf 1s, und Zack - makeCalls.php läuft, aber initialize.php muss nur eine Sekunde warten, bis er dem Client die Request-ID geben kann. Das muss ich gleich heute mal ausprobieren. Ich sag dann Bescheid, obs klappt.
Viele Grüße!