Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] API-Request(s) optimieren

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] API-Request(s) optimieren

    Hallo Community,
    nachdem ich hier schon viel lernen konnte, kommt nun mein erster eigener Thread.

    Ich habe ein Script geschrieben, welches die API eines bekannten Spieleentwicklers anspricht und bestimmte Informationen abfragt.

    Der Request läuft über eine uri mit GET-Parametern. Folgend mal ein ungefähres Beispiel, wie die uri aufgebaut sein könnte:

    PHP-Code:
    $uri 'https://eu.hersteller.de/spielname/server?spielcharakter=name&apikey=%meinpersönlicherkey%' 
    Sollte es relevant sein, kann ich natürlich noch preisgeben um welche API es handelt und einen genauen link zur Doku geben. Nur denke ich derzeit, dass es eher als Werbung missverstanden werden kann.

    Diese uri führe ich im Script mit folgendem Code aus, um am Ende ein Objekt mit den entsprechenden Daten zu erhalten:
    PHP-Code:
    $json_data file_get_contents($uri);    
    $profil json_decode($json_data); 
    klappt alles wunderbar.

    Nun zur eigentlichen Frage. Wenn ich mehrere Abfragen in z.B. einer foreach Schleife mache und bei jedem Durchlauf ein anderen Spielernamen Abfrage dauert das (bei ca. 8 Requests) sehr lange (bis zu 15 Sekunden).

    Gibt es Möglichkeiten, diese Dauer zu minimieren? Der Hersteller erlaubt bis zu 10 Requests pro Sekunde.

    Grüße

  • #2
    zieh dir die daten doch asyncron mit ajax...
    http://coenraets.org/blog/2011/12/ba...tting-started/

    Kommentar


    • #3
      [...] asyncron [...]
      ich glaube das war das Stichwort, das mir fehlte. Danke.

      Ich werde mir den Link morgen einmal genauer ansehen und Durchlesen.

      Kommentar


      • #4
        Btw: verwende als Beispieldomain example.org, die ist offiziell dafür.

        Evt wäre Caching noch etwas für dich.
        [URL="https://github.com/chrisandchris"]GitHub.com - ChrisAndChris[/URL] - [URL="https://github.com/chrisandchris/symfony-rowmapper"]RowMapper und QueryBuilder für MySQL-Datenbanken[/URL]

        Kommentar


        • #5
          Oh das mit example.org kann ich noch nicht bzw. wusste nicht, dass es die "offizielle" Beispiel-Domain ist. Ich dachte immer, dass das die Leute zufällig als Beispieldomain genommen hätten ...

          Das Thema caching werde ich mir dann ebenfalls ansehen, nachdem ich durch das Tutorial durchgestiegen bin, welches moma mir verlinkt hat.

          Ich habe diese API Requests wie er von mir beschrieben wurde derzeit in einem Symfony2 Controller durchgeführt. (hab für das Projekt ein eigenes Bundle erstellt.) Ich weiß man soll keine gezielten Fragen zu einem Softwareprodukt stellen, deswegen hatte ich das weggelassen und versuche nun die mir genannten Lösungen in mein Symfony Bundle zu integrieren.

          Danke

          Kommentar

          Lädt...
          X