2oe: Denkanstoß

Hallo,

ich kenne mich inzwischen etwas mit HTML, PHP, CSS aus.
Aber bei meinem jetzigen Vorhaben stoße ich an meine Grenzen!

Es gibt einen Liveticker, der früher unter Coveritlive abgebildet wurde.
Da Coveritlive nun richtig Kohle dafür nimmt, ist die Idee etwas ähnliches selbst zu "stricken"!

Allerdings ist es so, dass teilweise über 2000 Leser den Ticker verfolgen.

Was ist nun serverschonender? Die Angaben aus einer Datei auszulesen (zB als Variablen) oder die Daten aus einer DB auszulesen?

und wie bekomme ich es hin, dass der "Ticker" sich aktualisiert, wenn neuen Nachrichten vorhanden sind... gerne mit Ausgabe eines kleinen Sounds.

Des Weiteren soll es dazu ein Video und Foto Upload geben... Hab überlegt einfach als Dateiupload und dann ggf. in eine DB eintragen!

Ich bräuchte nur ein paar Denkanstöße und kein fertiges Skript, denn den Weg möchte ich mir selbst gerne erarbeiten, aber wie gesagt ich müsste mal eine grobe Richtung wissen!

  1. Allerdings ist es so, dass teilweise über 2000 Leser den Ticker verfolgen.

    Ein Ticker ist nicht ressourcenverbrauchender, als der Rest der Seite. Also wenn Deine Kapazitäten generell für 2000 Leute reichen, warum nicht auch für den Ticker? (Das rendern übernimmt ja der jew. Klient, falls Du das meinst).

    Was ist nun serverschonender? Die Angaben aus einer Datei auszulesen (zB als Variablen) oder die Daten aus einer DB auszulesen?

    Soweit ich das beurteilen würde, nimmt sich das nicht viel, zumal du beim ersten auch über den Umweg einer Variablen gehen möchtest. Anders sähe es vielleicht aus, wenn Du die Texte (vielleicht html-Quelltexte) direkt anzeigst, mittels AJAX.

    und wie bekomme ich es hin, dass der "Ticker" sich aktualisiert, wenn neuen Nachrichten vorhanden sind... gerne mit Ausgabe eines kleinen Sounds.

    Modell 1) Beim Aufbau der Seite lädst du die Daten für den Ticker: Nachteil, der Klient empfängt Daten, die er vielleicht gar nicht braucht/sehen wird. Nachteil: Ohne neuen Seitenaufbau bekommst du keine neuen Daten für den Ticker ran. Also:
    Modell 2) die Daten für den Ticker werden dynamisch nachgeladen (AJAX). Sobald eine Meldung durch ist, nächste Laden oder ähnlich.

    Des Weiteren soll es dazu ein Video und Foto Upload geben... Hab überlegt einfach als Dateiupload und dann ggf. in eine DB eintragen!

    Wie genau gehört das zusammen?

    Ich bräuchte nur ein paar Denkanstöße und kein fertiges Skript, denn den Weg möchte ich mir selbst gerne erarbeiten, aber wie gesagt ich müsste mal eine grobe Richtung wissen!

    Möchtest Du vielleicht trotzdem ein Framework verwenden? Da musst du noch genug selber machen aber du sparst dir die Basics.

    Cheers,
    Baba

    1. Danke, Baba.

      Es geht nicht um einen Newsticker, der durch das Bild läuft, sondern um einen Liveticker für ein Sportevent.
      Vielleicht bringt das etwas Licht ins Dunkel! :D

      1. Hallo Soeren == 2oe (?)

        Es geht nicht um einen Newsticker, der durch das Bild läuft, sondern um einen Liveticker für ein Sportevent.

        Ich meine, dass ist nicht so wichtig, was dort für Informationen angezeigt werden. Bleibt dabei: du musst dich nach AJAX erkundigen. Es ermöglicht Dir in regelmäßigen Abständen (30sek) oder nach anderen Events (Refreshbutton) den Content dynamisch nachzuladen. Natürlich kannst Du dann zunächst mal prüfen, ob es updates gibt oder alles beim Alten ist.

        Cheers,
        Baba

        1. Hallo,

          [AJAX] Natürlich kannst Du dann zunächst mal prüfen, ob es updates gibt oder alles beim Alten ist.

          das lohnt sich hier wahrscheinlich nicht. Ein HTTP-Request/Response-Zyklus produziert schon mehrere hundert Bytes Protokoll-Overhead. Da kommt's auf, sagen wir, 60..80 Zeichen Nutzinhalt auch nicht mehr an, so dass man auch einfach stur immer die aktuelle Meldung senden kann.

          Ciao,
           Martin

          --
          Moskito, ergo summ.
          Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
          1. @Baba ja, 2oe = Soeren! :) AJAX schaue ich mir dann mal an. Empfehlung für guten Lesestoff im Netz dazu?

            @Martin: also Stumpf die komplette Seite zB alle 30 Sek. neuladen? Hm, ich glaub die AJAX Variante finde ich schicker... weil NICHT die ganze Seite geladen wird.

            Hallo,

            [AJAX] Natürlich kannst Du dann zunächst mal prüfen, ob es updates gibt oder alles beim Alten ist.

            das lohnt sich hier wahrscheinlich nicht. Ein HTTP-Request/Response-Zyklus produziert schon mehrere hundert Bytes Protokoll-Overhead. Da kommt's auf, sagen wir, 60..80 Zeichen Nutzinhalt auch nicht mehr an, so dass man auch einfach stur immer die aktuelle Meldung senden kann.

            Ciao,
            Martin

            1. Hallo,

              @Martin: also Stumpf die komplette Seite zB alle 30 Sek. neuladen?

              nein, nur den momentan aktuellen Text im Ticker.

              Hm, ich glaub die AJAX Variante finde ich schicker... weil NICHT die ganze Seite geladen wird.

              Eben. Ich wollte nur betonen, dass dabei vermutlich die Datenmenge so gering ist, dass sich ein separates "Nachfragen ob's was Neues gibt" nicht lohnt.

              Hallo,
              [...]
              Ciao,
              Martin

              Und gewöhne dir bitte einen sinnvollen Zitierstil an, anstatt das Vorposting einfach komplett stehenzulassen.

              So long,
               Martin

              --
              F: Was ist wichtiger: Die Sonne oder der Mond?
              A: Der Mond. Denn er scheint nachts. Die Sonne dagegen scheint tagsüber, wenn es sowieso hell ist.
              Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
            2. مرحبا

              @Baba ja, 2oe = Soeren! :)

              Ist das ein Code? Weiht Ihr uns ein? Ich steh auf Geheimniskrämereien ;)

              mfg

              1. مرحبا

                @Baba ja, 2oe = Soeren! :)

                Ist das ein Code? Weiht Ihr uns ein? Ich steh auf Geheimniskrämereien ;)

                Hat sich erledigt ... Habsch verstanden.

                mfg

        2. hi,

          hatte so etwas auch relativ oft schon im einsatz.
          Meine Empfehlung, grade auch bei Verbindungen übers Handy:
          Sende einen AJAX-Request an den Server mit dem Zeitstempel der letzten Nachricht bzw. einer ID (mir hat der Zeitstempel bis zu dem Punkt geholfen, als dann meldungen nachträglich eingefügt werden mussten).
          Auf dem Server schaust du einfach nur nach der neuesten Nachricht (ID) und vergleichst mit der Anfrage. Wenn es was neues gibt, sendest du es eben direkt zurück (über die ID weißt du ja, was alles neu gesendet werden muss). Wenns nichts neues gibt, eben eine Antwort ala "alles ok".

          Du kannst das ganze, wenn du es eh im einsatz hast!?, per Session lösen.

          Alternativ ginge es auch, einfach alle 30Sek die Seite neu zu laden (wird hier im Forum ja auch gemacht in der Übersicht). Dabei hast du es zwar einfach, da alles geladen wird, du lädst aber eben unnötig viel. Ohne Browsercache eventuell sogar alles ...

          Nachladen ist auch beim "nachlesen" am angenehmsten, da man nicht "rumhüpft".
          Ob du beim ersten laden schon Nachrichten mit gibst oder immer die Nachrichten erst per Ajax holst ... Die vor oder Nachteile bekommst sicher selber aufgeschrieben (für mich eh zu vernachlässigen ...)

          Mein Favorit: Seite Laden mit allen Nachrichten und per Ajax neue nachholen. Wenn JS nicht verfügbar ist, dann autoreload. (bzw. autoreload per JS deaktivieren ...)

          Gruß Niklas

          --
          Man muss nicht alles wissen, man sollte aber wissen, wo das nicht gewusste zu finden ist.