Ankündigung

Einklappen
Keine Ankündigung bisher.

flush()-Ausgabe erneut "flushen"?

Einklappen

Neue Werbung 2019

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

  • flush()-Ausgabe erneut "flushen"?

    Hallo Leute,

    ich bin neu hier, aber habe gleich mal ein Problem, wo ich mit meinem Latein bzw. PHP am Ende bin...

    Und zwar:
    Ich habe eine Seite auf einem Server (nenn ich mal Server A), die sich ihren Inhalt aus lokalen Dateien per include() reinlädt. Zusätzlich habe ich noch externen Inhalt (auf einem externen Server ("Server B")) der momentan auch einfach per include() geladen wird.
    Bis dahin klappt alles.

    Das Problem ist jetzt allerdings, dass der Inhalt von Server B per flush() nach und nach gesendet wird. Wenn ich das per include() auf Server A laden will, dann wird es erst geladen, wenn der GESAMTE Inhalt übertragen wurde (also alle flush()-Befehle auf Server B ausgeführt wurden) und das dauert immer so 20-30 Sekunden, was ich dem Benutzer natürlich nicht zumuten kann.

    Hat jemand ne Idee, was man da machen kann? Kann man das "Geflushte" von Server B auf Server A nochmal "flushen" oder so? Eine AJAX-Einbindung klappt leider auch nicht wegen externer Server.

    Vielen Dank schonmal!

    Gruß,
    Maxi

    PS: Der Inhalt muss übrigens auf Server B bleiben, da der von einem speziellen Programm generiert wird. Ich weiß also auch gar nicht ob der Befehl dort wirklich "flush()" ist, weil ich weiß nicht in was für einer Sprache das läuft, aber das tut denk ich nichts zur Sache.

    EDIT: Da ich "Wer darf hier posten" erst nachträglich gelesen habe: phpinfo()

  • #2
    Hallo,

    ich empfehle dir Caching. So hat nur jeder x-te Benutzer einen langsamen Aufruf. Es sei denn, du brauchst das Minuten-aktuell...

    Kommentar


    • #3
      Hallo,

      stimmt, danke. Da hab ich gar nicht dran gedacht! Mit dem werd ich's mal versuchen.

      Es kann allerdings sein, dass es zeitweise, wenn sich viel ändert, auch mal minuten-aktuell sein müsste. Was kann ich dann da machen?
      Der Server ist leider auch nicht der schnellste, drum fallen Sachen wie Reverse-Proxy weg...

      Kommentar


      • #4
        Wieso sollte AJAX nicht funktionieren? Das geht auch mit externen Servern.

        Kommentar


        • #5
          Wodurch ist der Umweg ServerB->ServerA->Client notwendig?
          An den 20-30 Sekunden, die ServerB benötigt, alle Daten zu senden, lässt sich sicher nichts ändern? Das ist eine halbe Ewigkeit (In 20-30 Sekunden wird auf meinem Rechner zum Beispiel eine ~250MB große Datei von DVD auf HDD kopiert - und das ist weder ein supertolles DVD-Laufwerk noch eine Hochleistungsplatte )

          Kommentar


          • #6
            Zitat von Flor1an Beitrag anzeigen
            Wieso sollte AJAX nicht funktionieren? Das geht auch mit externen Servern.
            Naja, wegen der Same Orgin Policy. Oder hab ich da was übersehen?

            Zitat von David Beitrag anzeigen
            Wodurch ist der Umweg ServerB->ServerA->Client notwendig?
            Die Daten werden von Server B werden von der Seite auf Server A verarbeitet/formatiert, da man auf Server B nichts einstellen kann. Abgesehen davon möchte ich auch iframes vermeiden und den Inhalt von Server B direkt in die Seite auf Server A einbetten. (Schon rein aus optischen Gründen.)

            Kommentar


            • #7
              Oder hab ich da was übersehen?
              Ja. Weil Ajax einen Server-Request absetzt und kein Javascript auf der anderen Seite ausführen möchte.

              Kommentar


              • #8
                Die Daten werden von Server B werden von der Seite auf Server A verarbeitet/formatiert, da man auf Server B nichts einstellen kann. Abgesehen davon möchte ich auch iframes vermeiden und den Inhalt von Server B direkt in die Seite auf Server A einbetten. (Schon rein aus optischen Gründen.)
                Als ich nehme an, dass es noch weitere gute Gründe gibt. Aber nach den bisherigen Informationen würde ich sagen "Schmeiße den langsamen, nicht konfigurierbaren ServerB raus und benutze nur ServerA"

                Kommentar


                • #9
                  Zitat von David Beitrag anzeigen
                  "Schmeiße den langsamen, nicht konfigurierbaren ServerB raus und benutze nur ServerA"
                  Würd ich gerne, aber ich brauch Server B, da auf dem die Daten generiert werden. Eventuell kann ich die Daten direkt aus dessen Datenbank lesen, aber dadurch wird das Problem wahrscheinlich nicht besser, da der lokal steht und nur einen normalen Upload (~384kbps) hat. (Deswegen "flusht" der vermutlich auch...).

                  Ich denke ich werd's also nochmal mit Caching versuchen, allerdings weiß ich noch nicht wie man nur einen Teil einer gecachten Seite neu cacht, da ich den Cache ja nicht jede Minute komplett neu laden kann. Hat da jemand Erfahrung damit?

                  Kommentar


                  • #10
                    Was macht das für einen Sinn einen Server immer abzufragen der nur so einen niedrigen Upload hat. Was genau möchtest du denn machen vielleicht kannst du dien Problem komplett anders angehen.

                    Zum Beispiel die Datenbank regelmäßig von Server B auf Server A spiegeln und dann die Abfragen immer nur von Server A zu machen.

                    Kommentar

                    Lädt...
                    X