Metalgurke: Jquery Ajax mehrere XMLHttpRequest gleichzeitig ausführen

Hallo Zusammen,
wie der Betreff ankündigt habe ich eine Frage bzgl. Jquery-Ajax. Kann es sein das Jquery-Ajax nicht mehrere XMLHttpRequests gleichzeitig ausführen kann?
Oder liege ich falsch? Kann mir das eigentlich nicht vorstellen.

Danke und Gruß
Metalgurke

  1. moin,

    wie der Betreff ankündigt habe ich eine Frage bzgl. Jquery-Ajax. Kann es sein das Jquery-Ajax nicht mehrere XMLHttpRequests gleichzeitig ausführen kann?

    Da sperren sich schon die Browser dagegen, d.h., ein Browser schickt einen Ajaxrequest erst dann raus, wenn die Response vom vorausgegangenen Request angekommen ist. Über dieses "nette" Feature hab ich mich auch schon geärgert.

    Oder liege ich falsch? Kann mir das eigentlich nicht vorstellen.

    Machbar isses. Warum sollte ein UA auf die Response warten, bevor er einen weiteren Request sendet? Da würde so manche Datenübertragung einen richtigen Schub bekommen, gerade heute im Zeitalter der Breitbandanschlüsse.

    Letztendlich ist die Wiederverwendbarkeit eines XHR-Objects auch nur ein Resultat aus der bedauerlichen Tatsache, dass ein Browser keinen ansynchronen Request erlaubt, solange noch eine Response erwartet wird.

    Horst Ajax

    1. wie der Betreff ankündigt habe ich eine Frage bzgl. Jquery-Ajax. Kann es sein das Jquery-Ajax nicht mehrere XMLHttpRequests gleichzeitig ausführen kann?

      Da sperren sich schon die Browser dagegen, d.h., ein Browser schickt einen Ajaxrequest erst dann raus, wenn die Response vom vorausgegangenen Request angekommen ist. Über dieses "nette" Feature hab ich mich auch schon geärgert.

      Bei welchem Browser soll das so sein? Die Anzahl offener Verbindungen ist zwar bei einigen Browsern begrenzt, aber parallele Requests sind innerhalb dieser Grenzen trotzdem möglich.

      Letztendlich ist die Wiederverwendbarkeit eines XHR-Objects auch nur ein Resultat aus der bedauerlichen Tatsache, dass ein Browser keinen ansynchronen Request erlaubt, solange noch eine Response erwartet wird.

      Was willst du damit sagen? Einem XHR-Objekt kannst du, wie jedem anderen auch, nicht einfach zwischendurch seine Daten überschreiben und erwarten, dass es auf den alten Daten weiterarbeitet.
      Als Beispiel z.B. ein Animationsobjekt. Wenn du dem sagst, bewege Element A von X nach Y. Dann sagst du ihm ohne auf den Abschluss der Bewegung zu warten, bewege Element B. Das wird nicht funktionieren.

    2. Da sperren sich schon die Browser dagegen, d.h., ein Browser schickt einen Ajaxrequest erst dann raus, wenn die Response vom vorausgegangenen Request angekommen ist. Über dieses "nette" Feature hab ich mich auch schon geärgert.

      Das ist falsch!

      Letztendlich ist die Wiederverwendbarkeit eines XHR-Objects auch nur ein Resultat aus der bedauerlichen Tatsache, dass ein Browser keinen ansynchronen Request erlaubt, solange noch eine Response erwartet wird.

      Auch das ist falsch.

      Struppi.

      1. Da sperren sich schon die Browser dagegen, d.h., ein Browser schickt einen Ajaxrequest erst dann raus, wenn die Response vom vorausgegangenen Request angekommen ist. Über dieses "nette" Feature hab ich mich auch schon geärgert.

        Das ist falsch!

        Letztendlich ist die Wiederverwendbarkeit eines XHR-Objects auch nur ein Resultat aus der bedauerlichen Tatsache, dass ein Browser keinen ansynchronen Request erlaubt, solange noch eine Response erwartet wird.

        Auch das ist falsch.

        Hallo Struppi,
        du hast geschrieben das hottis Aussagen falsch wären, könntest du das näher begründen.

        Danke und Gruß
        Metalgurke

        1. du hast geschrieben das hottis Aussagen falsch wären, könntest du das näher begründen.

          Es ist kein Problem mehrere AJAX Requests parallel aufzurufen. Es gibt aber Obergrenzen je nach Browser. Du musst nur dafür sorgen, dass jeder Request ein eigenes XHR Objekt bekommt. Ob das bei jquery so ist, weiß ich nicht.

          Struppi.

        2. Hi,

          du hast geschrieben das hottis Aussagen falsch wären, könntest du das näher begründen.

          hotti gibt hier im Forum insb. bzgl. des Themas AJAX/XMLHttpRequest schon seit einiger Zeit Antworten, die meistens Kokolores sind;
          darüber hinaus veröffentlicht er auf seiner Webseite auch noch eigene „Artikel“, die meist nur ein Fünkchen Wahrheit unter sehr viel hanebüchenem Drumherum enthalten.

          Ärgerlicherweise zeigt er kaum Einsicht, wenn er hier im Forum von mehreren Seiten darauf hingewiesen wird, dass sein Verständnis der Thematik mit der Realität nicht viel zu tun hat.

          MfG ChrisB

          --
          “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
  2. Moin!

    wie der Betreff ankündigt habe ich eine Frage bzgl. Jquery-Ajax. Kann es sein das Jquery-Ajax nicht mehrere XMLHttpRequests gleichzeitig ausführen kann?
    Oder liege ich falsch? Kann mir das eigentlich nicht vorstellen.

    Doch, das ist korrekt. Grundsätzlich ist mit HTTP 1.1 die Anzahl paralleler Requests auf einen einzelnen Server sowieso begrenzt (Standard sind 4 gleichzeitige Verbindungen), aber XMLHttpRequest wird von Browsern sogar auf ein oder vielleicht zwei Verbindungen begrenzt.

    - Sven Rautenberg

  3. Ich danke euch beiden für die Antworten, jetzt bin ich wieder ein Stück klüger. Dann bleibt mir wohl für mein Vorhaben nichts Weiteres übrig, als eine Art Warteschlange für Ajax-Requests zu proggen. Schade, da ich eigentlich vor hatte bis zu 10 Requests gleichzeitig laufen zu lassen.
    Wenn doch noch irgendjemand einen genialen Einfall hat, bitte melden :)

    Gruß Christian

    1. [latex]Mae  govannen![/latex]

      Ich danke euch beiden für die Antworten, jetzt bin ich wieder ein Stück klüger. Dann bleibt mir wohl für mein Vorhaben nichts Weiteres übrig, als eine Art Warteschlange für Ajax-Requests zu proggen. Schade, da ich eigentlich vor hatte bis zu 10 Requests gleichzeitig laufen zu lassen.
      Wenn doch noch irgendjemand einen genialen Einfall hat, bitte melden :)

      Wenn du 10 Sachen aus dem Baumarkt brauchst, fährst du dann auch 10 Mal zum Baumarkt und zurück oder nimmst du alles in einer Tour mit?

      Na also.

      JSON könnte hier helfen, die einzelnen Daten vernünftig einzupacken.

      Cü,

      Kai

      --
      Resig is more like Javascript's Pee Wee Herman.  ;) (D.Mark in clj)
      Foren-Stylesheet Site Selfzeug JS-Lookup
      SelfCode: sh:( fo:| ch:? rl:( br:< n4:( ie:{ mo:| va:) js:| de:> zu:) fl:( ss:| ls:?
    2. gruss Metalgurke,

      ... Dann bleibt mir wohl für mein Vorhaben nichts Weiteres übrig,
      als eine Art Warteschlange ... zu proggen. ...
      Wenn doch noch irgendjemand einen ... Einfall hat, bitte melden :)

      so long - peterS. - pseliger@gmx.net

      --
      »Because objects in JavaScript are so flexible, you will want to think differently about class hierarchies.
      Deep hierarchies are inappropriate. Shallow hierarchies are efficient and expressive.« - Douglas Crockford
      ie:( fl:) br:> va:( ls:& fo:) rl:) n3;} n4:} ss:} de:µ js:} mo:? zu:]
    3. Hallo,

      Dann bleibt mir wohl für mein Vorhaben nichts Weiteres übrig, als eine Art Warteschlange für Ajax-Requests zu proggen.

      wozu? Genau diese Warteschlange betreibt der Browser doch selbst schon. Du initialisierst einfach mehrere XHR-Objekte und "bestellst" damit die gewünschten Ressourcen. Der Browser wird sein Bestes tun, diese Wünsche zu erfüllen. Entweder schön nacheinander, oder auch parallel, wenn er meint, er dürfte das.

      Ciao,
       Martin

      --
      Wer keiner Fliege etwas zuleide tut, darf sich nicht über die Maden im Fleisch wundern.